private static Activity UpdateActivity(Account account, String name, Object value, DateTime timestamp)
 {
     return value != null
         ? account.Act(name, value, timestamp)
         : null;
 }
 private static Activity UpdateActivity(
     Account account,
     DateTime timestamp,
     String category,
     String subId,
     String userAgent,
     String value,
     Byte[] data
 )
 {
     Activity activity = account[category, timestamp];
     if (activity == null)
     {
         return account.Act(timestamp, category, subId, userAgent, value, data);
     }
     if (activity.UserAgent != userAgent)
     {
         activity.UserAgent = userAgent;
     }
     if (activity.Value != value)
     {
         activity.Value = value;
     }
     if (activity.Data != data)
     {
         activity.Data = data;
     }
     return activity;
 }