public void Analyze()
 {
     foreach (var pr in value.GetType().GetProperties())
     {
         if (pr.CanRead)
         {
             Analyze(value, pr);
         }
     }
     proxy.OnAnalyzed();
 }