private void populatePlaceHolder( int numberOfNames )
        {
            Main main = (Main)Page.Master;
              BHLProvider provider = new BHLProvider();
              CustomGenericList<NameCloud> list = null;

              // Cache the results of the Subject queries for 24 hours
            String cacheKey = "NameSelectTop" + numberOfNames.ToString();
              if ( Cache[ cacheKey ] != null )
              {
            // Use cached version
                list = (CustomGenericList<NameCloud>)Cache[ cacheKey ];
              }
              else
              {
            // Refresh cache
            list = provider.PageNameSelectTop( numberOfNames );
            Cache.Add( cacheKey, list, null, DateTime.Now.AddMinutes(
              Convert.ToDouble( ConfigurationManager.AppSettings[ "SubjectQueryCacheTime" ] ) ),
              System.Web.Caching.Cache.NoSlidingExpiration, System.Web.Caching.CacheItemPriority.Normal, null );
              }

            _totalCount = main.TitlesOnlineCount;

            list.Sort( SortOrder.Descending, "Qty" );
            _maxCount = list[ 0 ].Qty;
            _minCount = list[ list.Count - 1 ].Qty;
            list.Sort( "NameConfirmed" );

            foreach ( NameCloud nameCloud in list )
              {
            if ( nameCloud.NameConfirmed != null )
            {
              HyperLink link = new HyperLink();
                    link.NavigateUrl = "/name/" + Server.UrlEncode( nameCloud.NameConfirmed );
                    link.Text = nameCloud.NameConfirmed;
                    link.CssClass = GetCssClassForCount( nameCloud.Qty );
              titleTagCloudPlaceHolder.Controls.Add( link );
              Image spacer = new Image();
              spacer.ImageUrl = "/images/blank.gif";
              spacer.Height = 1;
              spacer.Width = 4;
              titleTagCloudPlaceHolder.Controls.Add( spacer );
            }
              }
        }