protected override void FillSearch(Uri context, string[] entityTypes, string searchPattern, string hierarchyNodeID, int maxCount, Microsoft.SharePoint.WebControls.SPProviderHierarchyTree searchTree)
        {
            //Make sure search is asking for the type of entity we return; site collection admin won't for example.
            if (!EntityTypesContain(entityTypes, SPClaimEntityTypes.FormsRole))
            {
                return;
            }

            //Counter to track what node we are in.
            int teamNode = -1;

            //Nodes where we will stick our matches.
            Microsoft.SharePoint.WebControls.SPProviderHierarchyNode matchNode = null;

            //Look to see if the value that is typed in matches any of our teams.
            foreach (string team in ourTeams)
            {
                //Increment team node tracker.
                teamNode += 1;

                if (team.ToLower().StartsWith(searchPattern.ToLower()))
                {
                    //We have a match, create a matching entity.
                    PickerEntity pe = GetPickerEntity(team);

                    //Add the team node where it should be displayed too.
                    if (!searchTree.HasChild(teamKeys[teamNode]))
                    {
                        //Create the node so we can show our match in there too.
                        matchNode = new
                                    SPProviderHierarchyNode(SqlClaims.ProviderInternalName,
                                                            teamLabels[teamNode],
                                                            teamKeys[teamNode],
                                                            true);

                        //Add it to the tree.
                        searchTree.AddChild(matchNode);
                    }
                    else
                    {
                        //Get the node for this team.
                        matchNode = searchTree.Children.Where(theNode =>
                                                              theNode.HierarchyNodeID == teamKeys[teamNode]).First();
                    }

                    //Add the match to our node.
                    matchNode.AddEntity(pe);
                }
            }
        }