/// <summary>
        /// Appends count number of tiles to the tile builder.
        /// </summary>
        private static void AppendTrackingDataToTile(TileXMLBuilder tileBuilder, IEnumerable<TrackingData> unorderedTrackingData)
        {
            // Append 15 minutes worth of scheduled tile notifications:
            DateTime time = DateTime.Now;
            tileBuilder.EnableNotificationQueue();

            for (int i = 0; i < 15; i++)
            {
                var orderedTrackingData = (from rtd in unorderedTrackingData
                                           where !rtd.IsNoData && rtd.PredictedArrivalTime > time
                                           orderby rtd.PredictedArrivalInMinutes ascending
                                           select rtd).Take(5).ToList();
                
                foreach (TrackingData trackingData in orderedTrackingData)
                {
                    tileBuilder.AppendTileWithBlockTextAndLines(
                        time,
                        (trackingData.PredictedArrivalTime - time).Minutes.ToString(),
                        trackingData.Status,
                        string.Format("BUS {0}", trackingData.Route.ShortName.ToUpper()),
                        trackingData.TripHeadsign.ToUpper(),
                        trackingData.StopName.ToUpper(),
                        string.Format("{0} / {1}", trackingData.ScheduledArrivalTime.ToString("h:mm"), trackingData.PredictedArrivalTime.ToString("h:mm")));
                }

                time = time.AddMinutes(1);
            }
        }