/// <summary>
        /// Tos the input combination.
        /// </summary>
        /// <param name="combos">Combos.</param>
        /// <param name="input">Input.</param>
        void toInputCombination(InputCombination combos, InputAction input)
        {
            if (combos.numActions + 1 > maxCombosNum || (combos.numActions == 1 && combos.GetActionAt(0).getCode(_playerSelected.Device) == 0))
            {
                combos.Clear();
            }

            combos.Add(input);
        }
        /// <summary>
        /// Resolves empty or None input or restricts input to max num of combinaition(maxCombosNum)
        /// </summary>
        /// <param name="combos">Combos. ex. w+Mouse1(x2)+Joystick1Button3(-)</param>
        /// <param name="input">Input.</param>
        void toInputCombination(InputCombination combos, InputAction input)
        {
            if (combos.numActions + 1 > maxCombosNum || (combos.numActions == 1 && combos.GetActionAt(0).getCode(_deviceByProfile) == 0))
            {
                combos.Clear();
            }

            combos.Add(input);

            //Debug.Log(input);
        }
        /// <summary>
        /// Fill StringBuilde with StateName=Hash,...values
        /// </summary>
        /// <returns></returns>
        StringBuilder HashStateInputsToStringBuilder()
        {
            Dictionary <int, InputState> stateInputsCurrent;
            List <int>    inputStatesToBeRemoved;
            List <string> profilesToBeRemoved;
            StringBuilder statesStringBuilder;

            statesStringBuilder = new StringBuilder();

            Dictionary <int, bool> stateInputsCombined = new Dictionary <int, bool> ();
            int numPlayers = settings.Players.Length;

            for (int i = 0; i < numPlayers; i++)
            {
                profilesToBeRemoved = new List <string> ();

                foreach (var DeviceProfileHashStateInput in settings.Players[i].DeviceProfileStateInputs)
                {
                    stateInputsCurrent = DeviceProfileHashStateInput.Value;

                    if (stateInputsCurrent.Count == 0)
                    {
                        profilesToBeRemoved.Add(DeviceProfileHashStateInput.Key);
                        continue;
                    }


                    inputStatesToBeRemoved = new List <int> ();



                    //Filter
                    foreach (var HashStateInput in stateInputsCurrent)
                    {
                        //fill String Builder with unique StateInputs
                        if (!stateInputsCombined.ContainsKey(HashStateInput.Key))
                        {
                            stateInputsCombined [HashStateInput.Key] = true;

                            statesStringBuilder.Append("\t" + HashStateInput.Value.name.Replace(" ", "_") + "=" + HashStateInput.Key + ",\n\r");
                        }



                        InputCombination combos = HashStateInput.Value.combinations [0];

                        if (combos != null && combos.GetActionAt(0).codeString == "None")
                        {
                            combos.Clear();

                            inputStatesToBeRemoved.Add(HashStateInput.Key);
                        }


                        combos = HashStateInput.Value.combinations [1];

                        if (combos != null && combos.GetActionAt(0).codeString == "None")
                        {
                            combos.Clear();
                            HashStateInput.Value.combinations [1] = null;
                        }
                    }

                    //remove those with "None" as Primary combination
                    foreach (var key in inputStatesToBeRemoved)
                    {
                        stateInputsCurrent.Remove(key);
                    }
                }



                //remove empty profiles
                foreach (var key in profilesToBeRemoved)
                {
                    settings.Players [i].DeviceProfileStateInputs.Remove(key);
                }
            }                                    //end for Players



            return(statesStringBuilder);
        }