string GetTimeSpan(datetime time_sec)
  {
   if(time_sec <= 0)
      return "0 seconds";
   string time_text = {};
   datetime remaining_sec = time_sec;
   int years = (int)remaining_sec / 31536000;
   remaining_sec %= 31536000;
   int months = (int)remaining_sec / 2592000;
   remaining_sec %= 2592000;
   int days = (int)remaining_sec / 86400;
   remaining_sec %= 86400;
   int hours = (int)remaining_sec / 3600;
   remaining_sec %= 3600;
   int minutes = (int)remaining_sec / 60;
   remaining_sec %= 60;
   int seconds = (int)remaining_sec;
   if(years > 0)
      time_text += (string)years + " years ";
   if(months > 0)
      time_text += (string)months + " months ";
   if(days > 0)
      time_text += (string)days + " days ";
   if(hours > 0)
      time_text += (string)hours + " hours ";
   if(minutes > 0)
      time_text += (string)minutes + " minutes ";
   if(seconds > 0)
      time_text += (string)seconds + " seconds ";
   return time_text;
  }