private static void AddExpandPaths(string[] paths, RootExpandNode rootExpandNode)
        {
            var currentNode = rootExpandNode.GetOrAdd(paths[0]);

            for (var i = 1; i < paths.Length; i++)
            {
                var path = paths[i];
                currentNode = currentNode.GetOrAdd(path);
            }
        }
        private static RootExpandNode GetRootExpandNode(IEnumerable <string> expandPaths)
        {
            var expandTree = new RootExpandNode();

            foreach (var expandPath in expandPaths)
            {
                var paths = expandPath.Split(Delimiters);
                AddExpandPaths(paths, expandTree);
            }

            return(expandTree);
        }