private void SetParentConnections <TState, TTrigger>(HierarchicalStateMachine <TState, TTrigger> stateMachine)
        {
            if (_parentConnections.Count > 0)
            {
                for (int i = 0; i < _parentConnections.Count; i++)
                {
                    var current = _parentConnections[i];

                    var parentId       = (TState)current.ParentStateId;
                    var initialChildId = (TState)current.InitialChildId;
                    var childs         = Array.ConvertAll(current.GetChilds(), objectId => (TState)objectId);

                    for (int j = 0; j < childs.Length; j++)
                    {
                        stateMachine.AddChildTo(parentId, childs[j]);
                    }

                    stateMachine.SetInitialStateTo(parentId, initialChildId);
                }
            }
        }