New test.
[mono.git] / mcs / tests / ver-il-gmcs.xml
index 0946aa8c26383efdad7939112fb70d41253c888d..3ee56a7a5d4668de69aeee6eee5c4e87e74fc0ed 100644 (file)
       <method name="Void .ctor()">
         <size>7</size>
       </method>
-      <method name="Void Main()">
-        <size>31</size>
+    </type>
+    <type name="A`1[U]">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="A`1+Test`1[U,T]">
+      <method name="A`1+Test`1+Nested`1[U,T,T] Foo()">
+        <size>2</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="A`1+Test`1+Nested`1[U,T,X]">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="X">
+      <method name="Int32 Main()">
+        <size>39</size>
       </method>
     </type>
   </test>
         <size>7</size>
       </method>
       <method name="Void Main()">
-        <size>90</size>
+        <size>86</size>
+      </method>
+    </type>
+    <type name="&lt;PrivateImplementationDetails&gt;">
+      <method name="Void .ctor()">
+        <size>7</size>
       </method>
     </type>
   </test>
         <size>7</size>
       </method>
       <method name="Void Main()">
-        <size>46</size>
+        <size>61</size>
       </method>
     </type>
   </test>
         <size>7</size>
       </method>
       <method name="Void Main(System.String[])">
-        <size>484</size>
+        <size>459</size>
       </method>
     </type>
     <type name="Mapper`2[A,R]">
         <size>17</size>
       </method>
     </type>
+    <type name="&lt;PrivateImplementationDetails&gt;">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
   </test>
   <test name="gtest-116.cs">
     <type name="Slow.Test">
         <size>14</size>
       </method>
       <method name="Polynomial`1[E] Add(Polynomial`1[E])">
-        <size>297</size>
+        <size>301</size>
       </method>
       <method name="Polynomial`1[E] Add(E)">
         <size>26</size>
         <size>78</size>
       </method>
       <method name="Polynomial`1[E] Mul(Polynomial`1[E])">
-        <size>219</size>
+        <size>221</size>
       </method>
       <method name="E Eval(E)">
         <size>106</size>
         <size>30</size>
       </method>
       <method name="Int32 Main()">
-        <size>118</size>
+        <size>117</size>
       </method>
     </type>
     <type name="X+A">
         <size>40</size>
       </method>
     </type>
+    <type name="&lt;PrivateImplementationDetails&gt;">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
   </test>
   <test name="gtest-166.cs">
     <type name="C">
         <size>7</size>
       </method>
       <method name="Boolean MoveNext()">
-        <size>147</size>
+        <size>145</size>
       </method>
       <method name="Void Dispose()">
         <size>8</size>
     </type>
     <type name="Fault">
       <method name="Void Main()">
-        <size>45</size>
+        <size>47</size>
       </method>
       <method name="System.String ToString()">
         <size>6</size>
       </method>
     </type>
   </test>
-  <test name="gtest-232.cs">
-    <type name="H">
-      <method name="Void .ctor()">
-        <size>7</size>
-      </method>
-      <method name="IEnumerable`1 Merge[T](IEnumerator`1)">
-        <size>30</size>
-      </method>
-      <method name="Void Main(System.String[])">
-        <size>1</size>
-      </method>
-    </type>
-    <type name="H+&lt;Merge&gt;c__Iterator0`1[T]">
-      <method name="Void .ctor()">
-        <size>7</size>
-      </method>
-      <method name="System.Object System.Collections.IEnumerator.get_Current()">
-        <size>12</size>
-      </method>
-      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()">
-        <size>7</size>
-      </method>
-      <method name="Boolean MoveNext()">
-        <size>117</size>
-      </method>
-      <method name="Void Dispose()">
-        <size>8</size>
-      </method>
-      <method name="Void Reset()">
-        <size>6</size>
-      </method>
-      <method name="T System.Collections.Generic.IEnumerator&lt;T&gt;.get_Current()">
-        <size>7</size>
-      </method>
-      <method name="IEnumerator`1 System.Collections.Generic.IEnumerable&lt;T&gt;.GetEnumerator()">
-        <size>40</size>
-      </method>
-    </type>
-  </test>
   <test name="gtest-233.cs">
     <type name="Program">
       <method name="Void .ctor()">
       <method name="Void Main()">
         <size>163</size>
       </method>
+      <method name="Void f6(ParamEnum)">
+        <size>1</size>
+      </method>
     </type>
   </test>
   <test name="gtest-263.cs">
       </method>
     </type>
   </test>
-  <test name="gtest-316.cs">
-    <type name="X">
-      <method name="Void .ctor()">
-        <size>7</size>
-      </method>
-      <method name="Void Main()">
-        <size>1</size>
-      </method>
-    </type>
-    <type name="Foo">
-      <method name="Void .ctor()">
-        <size>7</size>
-      </method>
-    </type>
-    <type name="Base">
-      <method name="Void .ctor()">
-        <size>7</size>
-      </method>
-      <method name="Void Method[R]()">
-        <size>0</size>
-      </method>
-    </type>
-    <type name="Derived">
-      <method name="Void .ctor()">
-        <size>7</size>
-      </method>
-      <method name="Void Method[S]()">
-        <size>7</size>
-      </method>
-      <method name="Void Method2[T]()">
-        <size>18</size>
-      </method>
-    </type>
-  </test>
   <test name="gtest-317.cs">
     <type name="Foo`1[K]">
       <method name="Void .ctor()">
         <size>7</size>
       </method>
       <method name="Void Main()">
-        <size>90</size>
+        <size>86</size>
+      </method>
+    </type>
+    <type name="&lt;PrivateImplementationDetails&gt;">
+      <method name="Void .ctor()">
+        <size>7</size>
       </method>
     </type>
   </test>
         <size>45</size>
       </method>
       <method name="Void Test_6(Boolean)">
-        <size>51</size>
+        <size>47</size>
       </method>
       <method name="Void Test_7(System.Object)">
         <size>8</size>
         <size>7</size>
       </method>
       <method name="Int32 Main()">
-        <size>75</size>
+        <size>50</size>
       </method>
       <method name="T[] Clone[T](T[])">
         <size>166</size>
       </method>
     </type>
+    <type name="&lt;PrivateImplementationDetails&gt;">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
   </test>
   <test name="gtest-422.cs">
     <type name="A">
       </method>
     </type>
   </test>
-  <test name="gtest-anon-1.cs">
-    <type name="X">
+  <test name="gtest-470.cs">
+    <type name="C">
+      <method name="Void Main()">
+        <size>13</size>
+      </method>
       <method name="Void .ctor()">
         <size>7</size>
       </method>
-      <method name="Void Hello[U](U)">
-        <size>1</size>
+    </type>
+  </test>
+  <test name="gtest-471.cs">
+    <type name="Q">
+      <method name="Void bar[T](T ByRef)">
+        <size>16</size>
       </method>
-      <method name="Void Test[T](T)">
-        <size>64</size>
+      <method name="Int32 Main()">
+        <size>11</size>
       </method>
-      <method name="Void Main()">
-        <size>14</size>
+      <method name="Void .ctor()">
+        <size>7</size>
       </method>
     </type>
-    <type name="Foo">
-      <method name="Void .ctor(Object, IntPtr)">
-        <size>0</size>
+  </test>
+  <test name="gtest-472.cs">
+    <type name="C`1[T]">
+      <method name="Void CopyUnsafe(T[], System.Int64[])">
+        <size>1</size>
       </method>
-      <method name="Void Invoke()">
-        <size>0</size>
+      <method name="Boolean CopyUnsafe(T[], Int64)">
+        <size>2</size>
       </method>
-      <method name="IAsyncResult BeginInvoke(System.AsyncCallback, System.Object)">
-        <size>0</size>
+      <method name="Void CopyUnsafe(T[])">
+        <size>11</size>
       </method>
-      <method name="Void EndInvoke(IAsyncResult)">
-        <size>0</size>
+      <method name="Void .ctor()">
+        <size>7</size>
       </method>
     </type>
-    <type name="X+&lt;Test&gt;c__AnonStorey0`1[T]">
+    <type name="A">
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
       <method name="Void .ctor()">
         <size>7</size>
       </method>
-      <method name="Void &lt;&gt;m__0()">
-        <size>18</size>
-      </method>
     </type>
   </test>
-  <test name="gtest-anon-10.cs">
-    <type name="X">
+  <test name="gtest-473.cs">
+    <type name="A`1[X]">
+      <method name="Void Foo[T]()">
+        <size>1</size>
+      </method>
       <method name="Void .ctor()">
         <size>7</size>
       </method>
-      <method name="IEnumerable`1 Test[T](T, T)">
-        <size>44</size>
-      </method>
-      <method name="Int32 Main()">
-        <size>95</size>
-      </method>
     </type>
-    <type name="X+&lt;Test&gt;c__Iterator0`1[T]">
+    <type name="B">
+      <method name="Void Foo[T]()">
+        <size>1</size>
+      </method>
       <method name="Void .ctor()">
         <size>7</size>
       </method>
-      <method name="System.Object System.Collections.IEnumerator.get_Current()">
-        <size>12</size>
+    </type>
+    <type name="C">
+      <method name="Int32 Main()">
+        <size>8</size>
       </method>
-      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()">
+      <method name="Void .ctor()">
         <size>7</size>
       </method>
-      <method name="Boolean MoveNext()">
-        <size>110</size>
-      </method>
-      <method name="Void Dispose()">
-        <size>8</size>
+    </type>
+  </test>
+  <test name="gtest-474.cs">
+    <type name="A`1[X]">
+      <method name="Void .ctor()">
+        <size>7</size>
       </method>
-      <method name="Void Reset()">
-        <size>6</size>
+    </type>
+    <type name="B`1[T]">
+      <method name="Void .ctor()">
+        <size>7</size>
       </method>
-      <method name="T System.Collections.Generic.IEnumerator&lt;T&gt;.get_Current()">
+    </type>
+    <type name="C">
+      <method name="Void Main()">
         <size>7</size>
       </method>
-      <method name="IEnumerator`1 System.Collections.Generic.IEnumerable&lt;T&gt;.GetEnumerator()">
-        <size>52</size>
+      <method name="Void .ctor()">
+        <size>7</size>
       </method>
     </type>
   </test>
-  <test name="gtest-anon-11.cs">
-    <type name="Test`1[R]">
+  <test name="gtest-475.cs">
+    <type name="Value`1[T]">
       <method name="Void .ctor()">
         <size>7</size>
       </method>
-      <method name="Void World[S,T](S, T)">
+      <method name="Void .cctor()">
         <size>1</size>
       </method>
-      <method name="Void Hello[U,V](U, V)">
-        <size>41</size>
-      </method>
     </type>
-    <type name="X">
+    <type name="Test`2[T,U]">
+      <method name="Value`1[T] get_Value()">
+        <size>2</size>
+      </method>
       <method name="Void .ctor()">
         <size>7</size>
       </method>
-      <method name="Void Main()">
-        <size>21</size>
-      </method>
     </type>
-    <type name="Foo">
-      <method name="Void .ctor(Object, IntPtr)">
-        <size>0</size>
-      </method>
-      <method name="Void Invoke()">
-        <size>0</size>
-      </method>
-      <method name="IAsyncResult BeginInvoke(System.AsyncCallback, System.Object)">
-        <size>0</size>
+    <type name="Test`2+B[T,U]">
+      <method name="Void .ctor(Value`1)">
+        <size>7</size>
       </method>
-      <method name="Void EndInvoke(IAsyncResult)">
-        <size>0</size>
+      <method name="Void .cctor()">
+        <size>16</size>
       </method>
     </type>
-    <type name="Test`1+&lt;Hello&gt;c__AnonStorey0`2[R,U,V]">
-      <method name="Void .ctor()">
+    <type name="C">
+      <method name="Void Main()">
         <size>7</size>
       </method>
-      <method name="Void &lt;&gt;m__0()">
-        <size>24</size>
+      <method name="Void .ctor()">
+        <size>7</size>
       </method>
     </type>
   </test>
-  <test name="gtest-anon-12.cs">
-    <type name="World`1[T]">
+  <test name="gtest-476.cs">
+    <type name="Test`1[T]">
+      <method name="B First()">
+        <size>10</size>
+      </method>
+      <method name="IFoo Second()">
+        <size>15</size>
+      </method>
       <method name="Void .ctor()">
         <size>7</size>
       </method>
-      <method name="Void Hello[U](U)">
+    </type>
+    <type name="C">
+      <method name="Void Main()">
         <size>1</size>
       </method>
-      <method name="Void Test(T)">
-        <size>46</size>
+      <method name="Void .ctor()">
+        <size>7</size>
       </method>
     </type>
-    <type name="X">
+  </test>
+  <test name="gtest-477.cs">
+    <type name="B`1[T]">
       <method name="Void .ctor()">
         <size>7</size>
       </method>
-      <method name="Void Main()">
-        <size>18</size>
-      </method>
     </type>
-    <type name="Foo">
-      <method name="Void .ctor(Object, IntPtr)">
-        <size>0</size>
-      </method>
-      <method name="Void Invoke()">
-        <size>0</size>
-      </method>
-      <method name="IAsyncResult BeginInvoke(System.AsyncCallback, System.Object)">
-        <size>0</size>
-      </method>
-      <method name="Void EndInvoke(IAsyncResult)">
-        <size>0</size>
+    <type name="B`1+BNested[T]">
+      <method name="Void .ctor()">
+        <size>7</size>
       </method>
     </type>
-    <type name="World`1+&lt;Test&gt;c__AnonStorey0[T]">
+    <type name="A`1[T]">
       <method name="Void .ctor()">
         <size>7</size>
       </method>
-      <method name="Void &lt;&gt;m__0()">
-        <size>18</size>
-      </method>
     </type>
-  </test>
-  <test name="gtest-anon-13.cs">
-    <type name="X">
+    <type name="AA`1[T]">
       <method name="Void .ctor()">
         <size>7</size>
       </method>
-      <method name="X+ModuleBinder`1[TDelegate] CreateMethodUnscoped[TDelegate]()">
-        <size>13</size>
+    </type>
+    <type name="AA`1+ANested[T]">
+      <method name="Void .ctor()">
+        <size>7</size>
       </method>
+    </type>
+    <type name="M">
       <method name="Void Main()">
         <size>1</size>
       </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
     </type>
-    <type name="X+ModuleBinder`1[T]">
-      <method name="Void .ctor(Object, IntPtr)">
-        <size>0</size>
+  </test>
+  <test name="gtest-478.cs">
+    <type name="M">
+      <method name="Void Foo()">
+        <size>1</size>
       </method>
-      <method name="T Invoke(System.Object)">
-        <size>0</size>
+      <method name="Void GenFoo()">
+        <size>1</size>
       </method>
-      <method name="IAsyncResult BeginInvoke(System.Object, System.AsyncCallback, System.Object)">
-        <size>0</size>
+      <method name="Void Main()">
+        <size>13</size>
       </method>
-      <method name="T EndInvoke(IAsyncResult)">
-        <size>0</size>
+      <method name="Void .ctor()">
+        <size>7</size>
       </method>
     </type>
-    <type name="X">
-      <method name="TDelegate &lt;CreateMethodUnscoped`1&gt;m__0[TDelegate](System.Object)">
+  </test>
+  <test name="gtest-479.cs">
+    <type name="A">
+      <method name="Void .ctor()">
         <size>7</size>
       </method>
     </type>
-  </test>
-  <test name="gtest-anon-14.cs">
-    <type name="T">
+    <type name="B">
       <method name="Void .ctor()">
         <size>7</size>
       </method>
-      <method name="Void SomeMethod(System.Converter`2[System.Int32,System.Int32])">
+    </type>
+    <type name="M">
+      <method name="Void Test[T](I`1)">
         <size>1</size>
       </method>
-      <method name="Void SomeCaller()">
-        <size>36</size>
-      </method>
       <method name="Void Main()">
-        <size>1</size>
+        <size>21</size>
       </method>
-      <method name="Int32 &lt;SomeCaller&gt;m__0(Int32)">
-        <size>2</size>
+      <method name="Void .ctor()">
+        <size>7</size>
       </method>
     </type>
   </test>
-  <test name="gtest-anon-15.cs">
-    <type name="Test`1[T]">
-      <method name="Void .ctor()">
-        <size>7</size>
+  <test name="gtest-480.cs">
+    <type name="C">
+      <method name="Void Foo()">
+        <size>55</size>
       </method>
-      <method name="Void Hello[S](T, S)">
-        <size>42</size>
+      <method name="Void Main()">
+        <size>30</size>
       </method>
-    </type>
-    <type name="X">
       <method name="Void .ctor()">
         <size>7</size>
       </method>
-      <method name="Void Main()">
-        <size>16</size>
-      </method>
     </type>
-    <type name="Foo`1[V]">
-      <method name="Void .ctor(Object, IntPtr)">
-        <size>0</size>
+  </test>
+  <test name="gtest-481.cs">
+    <type name="TestClass`1[T]">
+      <method name="Void Add(T[][] ByRef)">
+        <size>1</size>
       </method>
-      <method name="Void Invoke(V)">
-        <size>0</size>
+      <method name="Void .ctor(Int32)">
+        <size>18</size>
       </method>
-      <method name="IAsyncResult BeginInvoke(V, System.AsyncCallback, System.Object)">
-        <size>0</size>
+    </type>
+    <type name="C">
+      <method name="Void Main()">
+        <size>8</size>
       </method>
-      <method name="Void EndInvoke(IAsyncResult)">
-        <size>0</size>
+      <method name="Void .ctor()">
+        <size>7</size>
       </method>
     </type>
-    <type name="Bar`1[W]">
-      <method name="Void .ctor(Object, IntPtr)">
-        <size>0</size>
+  </test>
+  <test name="gtest-482.cs">
+    <type name="TestBug.BugClass`1[T]">
+      <method name="Void add_Evt(System.EventHandler)">
+        <size>1</size>
       </method>
-      <method name="Void Invoke(W)">
-        <size>0</size>
+      <method name="Void remove_Evt(System.EventHandler)">
+        <size>1</size>
       </method>
-      <method name="IAsyncResult BeginInvoke(W, System.AsyncCallback, System.Object)">
-        <size>0</size>
+      <method name="Void Bug()">
+        <size>19</size>
       </method>
-      <method name="Void EndInvoke(IAsyncResult)">
-        <size>0</size>
+      <method name="Void Handler(System.Object, System.EventArgs)">
+        <size>1</size>
       </method>
-    </type>
-    <type name="Test`1+&lt;Hello&gt;c__AnonStorey1`1[T,S]">
       <method name="Void .ctor()">
         <size>7</size>
       </method>
-      <method name="Void &lt;&gt;m__0(Int64)">
-        <size>57</size>
-      </method>
     </type>
-    <type name="Test`1+&lt;Hello&gt;c__AnonStorey1`1+&lt;Hello&gt;c__AnonStorey0`1[T,S]">
+    <type name="TestBug.MainClass">
+      <method name="Void Main()">
+        <size>25</size>
+      </method>
       <method name="Void .ctor()">
         <size>7</size>
       </method>
-      <method name="Void &lt;&gt;m__1(T)">
-        <size>65</size>
-      </method>
     </type>
   </test>
-  <test name="gtest-anon-16.cs">
-    <type name="A">
-      <method name="Void .ctor(TestFunc`1)">
-        <size>7</size>
+  <test name="gtest-483.cs">
+    <type name="Program">
+      <method name="Int32 Main()">
+        <size>86</size>
       </method>
-      <method name="Void Main()">
-        <size>1</size>
+      <method name="Void ReplaceContentsWith[T](T, T)">
+        <size>91</size>
       </method>
-    </type>
-    <type name="TestClass">
       <method name="Void .ctor()">
-        <size>47</size>
-      </method>
-      <method name="Void Func[T](TestFunc`1[T])">
-        <size>1</size>
+        <size>7</size>
       </method>
     </type>
-    <type name="TestFunc`1[T]">
-      <method name="Void .ctor(Object, IntPtr)">
-        <size>0</size>
+    <type name="Int32Collection">
+      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()">
+        <size>17</size>
       </method>
-      <method name="Void Invoke(T)">
-        <size>0</size>
+      <method name="Int32 get_Count()">
+        <size>12</size>
       </method>
-      <method name="IAsyncResult BeginInvoke(T, System.AsyncCallback, System.Object)">
-        <size>0</size>
+      <method name="Int32 get_Item(Int32)">
+        <size>13</size>
       </method>
-      <method name="Void EndInvoke(IAsyncResult)">
-        <size>0</size>
+      <method name="Void set_Item(Int32, Int32)">
+        <size>14</size>
+      </method>
+      <method name="Void Add(Int32)">
+        <size>13</size>
+      </method>
+      <method name="Void Clear()">
+        <size>12</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>18</size>
       </method>
     </type>
-    <type name="TestClass">
-      <method name="Void &lt;a&gt;m__0(Int32)">
+  </test>
+  <test name="gtest-484.cs">
+    <type name="MainClass">
+      <method name="Void Foo(System.Action`1[MainClass][][])">
+        <size>1</size>
+      </method>
+      <method name="System.Action`1[MainClass][] Set(System.Action`1[MainClass][])">
+        <size>2</size>
+      </method>
+      <method name="Void Bar(MainClass)">
         <size>1</size>
       </method>
+      <method name="Void Main(System.String[])">
+        <size>100</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
     </type>
   </test>
-  <test name="gtest-anon-17.cs">
+  <test name="gtest-485.cs">
     <type name="C">
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
       <method name="Void .ctor()">
         <size>7</size>
       </method>
-      <method name="Void Test[T,U](C+Func`1[T], U)">
+    </type>
+  </test>
+  <test name="gtest-486.cs">
+    <type name="MyCollection`1[T]">
+      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()">
+        <size>2</size>
+      </method>
+      <method name="Void AddRange(IMyCollection`1)">
         <size>1</size>
       </method>
-      <method name="Void Main()">
-        <size>75</size>
+      <method name="Void AddRange(IEnumerable`1)">
+        <size>1</size>
       </method>
-    </type>
-    <type name="C+Func`1[T]">
-      <method name="Void .ctor(Object, IntPtr)">
-        <size>0</size>
+      <method name="Int32 get_Count()">
+        <size>2</size>
       </method>
-      <method name="T Invoke(T)">
-        <size>0</size>
+      <method name="Boolean get_IsReadOnly()">
+        <size>2</size>
       </method>
-      <method name="IAsyncResult BeginInvoke(T, System.AsyncCallback, System.Object)">
-        <size>0</size>
+      <method name="Void Add(T)">
+        <size>1</size>
       </method>
-      <method name="T EndInvoke(IAsyncResult)">
-        <size>0</size>
+      <method name="Void Clear()">
+        <size>1</size>
       </method>
-    </type>
-    <type name="C">
-      <method name="Int32 &lt;Main&gt;m__0(Int32)">
+      <method name="Boolean Contains(T)">
         <size>2</size>
       </method>
-      <method name="Int32 &lt;Main&gt;m__1(Int32)">
-        <size>2</size>
+      <method name="Void CopyTo(T[], Int32)">
+        <size>1</size>
+      </method>
+      <method name="Boolean Remove(T)">
+        <size>2</size>
+      </method>
+      <method name="IEnumerator`1 GetEnumerator()">
+        <size>2</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="P">
+      <method name="MyCollection`1[System.String] get_IgnoreTokens()">
+        <size>36</size>
+      </method>
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+      <method name="Void .cctor()">
+        <size>21</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-487.cs">
+    <type name="Limada.MonoTests.Generics.MultiDictionary`3[K,V,TDictionary]">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="Limada.MonoTests.Generics.Test">
+      <method name="Void Main()">
+        <size>7</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-488.cs">
+    <type name="Ref">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="Def">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="FooProcessor`1[T]">
+      <method name="Void Attach(T, Def)">
+        <size>15</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="Program">
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-489.cs">
+    <type name="sample">
+      <method name="TValue Value[TKey,TValue]()">
+        <size>0</size>
+      </method>
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="sample+nested`1[T]">
+      <method name="TValue Value[TKey,TValue]()">
+        <size>6</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-490.cs">
+    <type name="Foo">
+      <method name="IEnumerator`1 System.Collections.Generic.IEnumerable&lt;Foo&gt;.GetEnumerator()">
+        <size>17</size>
+      </method>
+      <method name="IEnumerator GetEnumerator()">
+        <size>17</size>
+      </method>
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>18</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-491.cs">
+    <type name="ArrayEqualityComparer`1[T]">
+      <method name="Boolean Equals(T[], T[])">
+        <size>2</size>
+      </method>
+      <method name="Int32 GetHashCode(T[])">
+        <size>2</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="Program">
+      <method name="Int32 Main()">
+        <size>13</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-492.cs">
+    <type name="B`1[T]">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="A`1[T]">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="A`1+C[T]">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="M">
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-493.cs">
+    <type name="MonoGenericIteratorTest.MyType">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="MonoGenericIteratorTest.MyCollectionBase`1[T]">
+      <method name="IEnumerator GetEnumerator()">
+        <size>17</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="MonoGenericIteratorTest.MyCollection">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="MonoGenericIteratorTest.MainClass">
+      <method name="Void Main(System.String[])">
+        <size>75</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-494.cs">
+    <type name="Grid`1[CT]">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="Grid`1+GPD[CT]">
+      <method name="Void .ctor()">
+        <size>18</size>
+      </method>
+    </type>
+    <type name="Grid`1+GPD+GC[CT]">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="H">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="H+MyCT">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="TheTest">
+      <method name="Void Main(System.String[])">
+        <size>7</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-495.cs">
+    <type name="Repro">
+      <method name="Void Main()">
+        <size>12</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="Repro+Outer">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="Repro+Outer+Inner`1[T]">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-496.cs">
+    <type name="Base">
+      <method name="T EndExecute[T](System.Object, System.String)">
+        <size>7</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="Derived">
+      <method name="Derived EndExecute[TElement](System.Object)">
+        <size>2</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="a">
+      <method name="Int32 Main()">
+        <size>14</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-497.cs">
+    <type name="Item">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="ItemCollection`1[T]">
+      <method name="Void Bind[U](ItemCollection`1[U])">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="a">
+      <method name="Void Main()">
+        <size>14</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-498.cs">
+    <type name="A">
+      <method name="Int32 Main()">
+        <size>16</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>15</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-499.cs">
+    <type name="C">
+      <method name="Int32 Test[T](T[])">
+        <size>21</size>
+      </method>
+      <method name="Int32 TestExtra[T](T[,])">
+        <size>22</size>
+      </method>
+      <method name="Int32 Main()">
+        <size>118</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-500.cs">
+    <type name="Program">
+      <method name="Int32 Main()">
+        <size>70</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-501.cs">
+    <type name="UndoableDictionary`2[TKey,TValue]">
+      <method name="Void TestFunc()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="UpdateableCollection`1[T]">
+      <method name="Void AddReferences()">
+        <size>1</size>
+      </method>
+      <method name="Void TestFunc()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="UpdateableCollection`1+X[T]">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="C">
+      <method name="Int32 Main()">
+        <size>8</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-502.cs">
+    <type name="C`1[T]">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+      <method name="Void .cctor()">
+        <size>31</size>
+      </method>
+    </type>
+    <type name="C`1+Foo`1[T,U]">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="C`1+Simple[T]">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="M">
+      <method name="Void Main()">
+        <size>7</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-503.cs">
+    <type name="TestAttribute">
+      <method name="Void .ctor(Type)">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="C`1[T]">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="C`1+N`1[T,U]">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="A">
+      <method name="Int32 Main()">
+        <size>28</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-504.cs">
+    <type name="C">
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-505.cs">
+    <type name="C">
+      <method name="Int32 Test(System.Collections.Generic.List`1[System.Int32])">
+        <size>3</size>
+      </method>
+      <method name="Int32 Test(System.String)">
+        <size>3</size>
+      </method>
+      <method name="Int32 Test(Int32)">
+        <size>2</size>
+      </method>
+      <method name="R Method[T,R](IEnumerable`1, System.Func`2[T,R])">
+        <size>16</size>
+      </method>
+      <method name="R Method2[T,R](IEnumerable`1, System.Func`2[System.Collections.Generic.List`1[T],R])">
+        <size>8</size>
+      </method>
+      <method name="Int32 Main()">
+        <size>73</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-506.cs">
+    <type name="C">
+      <method name="Void Main()">
+        <size>9</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-507.cs">
+    <type name="A">
+      <method name="Int32 Main()">
+        <size>26</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="B`1[T]">
+      <method name="Int32 get_Item(T)">
+        <size>2</size>
+      </method>
+      <method name="Int32 get_Item(System.Object)">
+        <size>2</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-508.cs">
+    <type name="B">
+      <method name="Void Main()">
+        <size>8</size>
+      </method>
+      <method name="Void .ctor(Int32)">
+        <size>8</size>
+      </method>
+    </type>
+    <type name="A`1[T]">
+      <method name="Void .ctor(T)">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-anon-1.cs">
+    <type name="X">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+      <method name="Void Hello[U](U)">
+        <size>1</size>
+      </method>
+      <method name="Void Test[T](T)">
+        <size>64</size>
+      </method>
+      <method name="Void Main()">
+        <size>14</size>
+      </method>
+    </type>
+    <type name="Foo">
+      <method name="Void .ctor(Object, IntPtr)">
+        <size>0</size>
+      </method>
+      <method name="Void Invoke()">
+        <size>0</size>
+      </method>
+      <method name="IAsyncResult BeginInvoke(System.AsyncCallback, System.Object)">
+        <size>0</size>
+      </method>
+      <method name="Void EndInvoke(IAsyncResult)">
+        <size>0</size>
+      </method>
+    </type>
+    <type name="X+&lt;Test&gt;c__AnonStorey0`1[T]">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+      <method name="Void &lt;&gt;m__0()">
+        <size>18</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-anon-10.cs">
+    <type name="X">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+      <method name="IEnumerable`1 Test[T](T, T)">
+        <size>44</size>
+      </method>
+      <method name="Int32 Main()">
+        <size>95</size>
+      </method>
+    </type>
+    <type name="X+&lt;Test&gt;c__Iterator0`1[T]">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+      <method name="System.Object System.Collections.IEnumerator.get_Current()">
+        <size>12</size>
+      </method>
+      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()">
+        <size>7</size>
+      </method>
+      <method name="Boolean MoveNext()">
+        <size>110</size>
+      </method>
+      <method name="Void Dispose()">
+        <size>8</size>
+      </method>
+      <method name="Void Reset()">
+        <size>6</size>
+      </method>
+      <method name="T System.Collections.Generic.IEnumerator&lt;T&gt;.get_Current()">
+        <size>7</size>
+      </method>
+      <method name="IEnumerator`1 System.Collections.Generic.IEnumerable&lt;T&gt;.GetEnumerator()">
+        <size>52</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-anon-11.cs">
+    <type name="Test`1[R]">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+      <method name="Void World[S,T](S, T)">
+        <size>1</size>
+      </method>
+      <method name="Void Hello[U,V](U, V)">
+        <size>47</size>
+      </method>
+    </type>
+    <type name="X">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+      <method name="Void Main()">
+        <size>21</size>
+      </method>
+    </type>
+    <type name="Foo">
+      <method name="Void .ctor(Object, IntPtr)">
+        <size>0</size>
+      </method>
+      <method name="Void Invoke()">
+        <size>0</size>
+      </method>
+      <method name="IAsyncResult BeginInvoke(System.AsyncCallback, System.Object)">
+        <size>0</size>
+      </method>
+      <method name="Void EndInvoke(IAsyncResult)">
+        <size>0</size>
+      </method>
+    </type>
+    <type name="Test`1+&lt;Hello&gt;c__AnonStorey0`2[R,U,V]">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+      <method name="Void &lt;&gt;m__0()">
+        <size>24</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-anon-12.cs">
+    <type name="World`1[T]">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+      <method name="Void Hello[U](U)">
+        <size>1</size>
+      </method>
+      <method name="Void Test(T)">
+        <size>46</size>
+      </method>
+    </type>
+    <type name="X">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+      <method name="Void Main()">
+        <size>18</size>
+      </method>
+    </type>
+    <type name="Foo">
+      <method name="Void .ctor(Object, IntPtr)">
+        <size>0</size>
+      </method>
+      <method name="Void Invoke()">
+        <size>0</size>
+      </method>
+      <method name="IAsyncResult BeginInvoke(System.AsyncCallback, System.Object)">
+        <size>0</size>
+      </method>
+      <method name="Void EndInvoke(IAsyncResult)">
+        <size>0</size>
+      </method>
+    </type>
+    <type name="World`1+&lt;Test&gt;c__AnonStorey0[T]">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+      <method name="Void &lt;&gt;m__0()">
+        <size>18</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-anon-13.cs">
+    <type name="X">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+      <method name="X+ModuleBinder`1[TDelegate] CreateMethodUnscoped[TDelegate]()">
+        <size>13</size>
+      </method>
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+    </type>
+    <type name="X+ModuleBinder`1[T]">
+      <method name="Void .ctor(Object, IntPtr)">
+        <size>0</size>
+      </method>
+      <method name="T Invoke(System.Object)">
+        <size>0</size>
+      </method>
+      <method name="IAsyncResult BeginInvoke(System.Object, System.AsyncCallback, System.Object)">
+        <size>0</size>
+      </method>
+      <method name="T EndInvoke(IAsyncResult)">
+        <size>0</size>
+      </method>
+    </type>
+    <type name="X">
+      <method name="TDelegate &lt;CreateMethodUnscoped`1&gt;m__0[TDelegate](System.Object)">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-anon-14.cs">
+    <type name="T">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+      <method name="Void SomeMethod(System.Converter`2[System.Int32,System.Int32])">
+        <size>1</size>
+      </method>
+      <method name="Void SomeCaller()">
+        <size>36</size>
+      </method>
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+      <method name="Int32 &lt;SomeCaller&gt;m__0(Int32)">
+        <size>2</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-anon-15.cs">
+    <type name="Test`1[T]">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+      <method name="Void Hello[S](T, S)">
+        <size>42</size>
+      </method>
+    </type>
+    <type name="X">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+      <method name="Void Main()">
+        <size>16</size>
+      </method>
+    </type>
+    <type name="Foo`1[V]">
+      <method name="Void .ctor(Object, IntPtr)">
+        <size>0</size>
+      </method>
+      <method name="Void Invoke(V)">
+        <size>0</size>
+      </method>
+      <method name="IAsyncResult BeginInvoke(V, System.AsyncCallback, System.Object)">
+        <size>0</size>
+      </method>
+      <method name="Void EndInvoke(IAsyncResult)">
+        <size>0</size>
+      </method>
+    </type>
+    <type name="Bar`1[W]">
+      <method name="Void .ctor(Object, IntPtr)">
+        <size>0</size>
+      </method>
+      <method name="Void Invoke(W)">
+        <size>0</size>
+      </method>
+      <method name="IAsyncResult BeginInvoke(W, System.AsyncCallback, System.Object)">
+        <size>0</size>
+      </method>
+      <method name="Void EndInvoke(IAsyncResult)">
+        <size>0</size>
+      </method>
+    </type>
+    <type name="Test`1+&lt;Hello&gt;c__AnonStorey1`1[T,S]">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+      <method name="Void &lt;&gt;m__0(Int64)">
+        <size>57</size>
+      </method>
+    </type>
+    <type name="Test`1+&lt;Hello&gt;c__AnonStorey1`1+&lt;Hello&gt;c__AnonStorey0`1[T,S]">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+      <method name="Void &lt;&gt;m__1(T)">
+        <size>65</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-anon-16.cs">
+    <type name="A">
+      <method name="Void .ctor(TestFunc`1)">
+        <size>7</size>
+      </method>
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+    </type>
+    <type name="TestClass">
+      <method name="Void .ctor()">
+        <size>47</size>
+      </method>
+      <method name="Void Func[T](TestFunc`1[T])">
+        <size>1</size>
+      </method>
+    </type>
+    <type name="TestFunc`1[T]">
+      <method name="Void .ctor(Object, IntPtr)">
+        <size>0</size>
+      </method>
+      <method name="Void Invoke(T)">
+        <size>0</size>
+      </method>
+      <method name="IAsyncResult BeginInvoke(T, System.AsyncCallback, System.Object)">
+        <size>0</size>
+      </method>
+      <method name="Void EndInvoke(IAsyncResult)">
+        <size>0</size>
+      </method>
+    </type>
+    <type name="TestClass">
+      <method name="Void &lt;a&gt;m__0(Int32)">
+        <size>1</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-anon-17.cs">
+    <type name="C">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+      <method name="Void Test[T,U](C+Func`1[T], U)">
+        <size>1</size>
+      </method>
+      <method name="Void Main()">
+        <size>75</size>
+      </method>
+    </type>
+    <type name="C+Func`1[T]">
+      <method name="Void .ctor(Object, IntPtr)">
+        <size>0</size>
+      </method>
+      <method name="T Invoke(T)">
+        <size>0</size>
+      </method>
+      <method name="IAsyncResult BeginInvoke(T, System.AsyncCallback, System.Object)">
+        <size>0</size>
+      </method>
+      <method name="T EndInvoke(IAsyncResult)">
+        <size>0</size>
+      </method>
+    </type>
+    <type name="C">
+      <method name="Int32 &lt;Main&gt;m__0(Int32)">
+        <size>2</size>
+      </method>
+      <method name="Int32 &lt;Main&gt;m__1(Int32)">
+        <size>2</size>
       </method>
     </type>
   </test>
         <size>1</size>
       </method>
       <method name="Void Main()">
-        <size>201</size>
+        <size>200</size>
       </method>
     </type>
     <type name="C+D">
         <size>53</size>
       </method>
     </type>
+    <type name="&lt;PrivateImplementationDetails&gt;">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
   </test>
   <test name="gtest-anon-24.cs">
     <type name="Disposable`1[T]">
         <size>26</size>
       </method>
       <method name="Int32 Main()">
-        <size>431</size>
+        <size>568</size>
       </method>
     </type>
     <type name="Test+&lt;For&gt;c__AnonStorey0`1[T]">
         <size>23</size>
       </method>
     </type>
-    <type name="Test+&lt;Do&gt;c__AnonStorey2`1[T]">
-      <method name="Void .ctor()">
-        <size>7</size>
+    <type name="Test">
+      <method name="Void ArrayMutate[T](T[])">
+        <size>27</size>
       </method>
-      <method name="T &lt;&gt;m__2()">
-        <size>28</size>
+      <method name="System.Func`1[T[][]] ArrayMultiMutate[T](T[][])">
+        <size>26</size>
+      </method>
+      <method name="System.Func`1[System.Type] TypeOf[T](T)">
+        <size>38</size>
       </method>
     </type>
-    <type name="Test+&lt;Lock&gt;c__AnonStorey3`1[T]">
+    <type name="Test+&lt;TypeOf&gt;c__AnonStorey2`1[T]">
+      <method name="System.Type &lt;&gt;m__2()">
+        <size>56</size>
+      </method>
       <method name="Void .ctor()">
         <size>7</size>
       </method>
+    </type>
+    <type name="Test+&lt;Do&gt;c__AnonStorey3`1[T]">
       <method name="T &lt;&gt;m__3()">
-        <size>65</size>
+        <size>28</size>
       </method>
-    </type>
-    <type name="Test+&lt;Catch&gt;c__AnonStorey4`1[T]">
       <method name="Void .ctor()">
         <size>7</size>
       </method>
+    </type>
+    <type name="Test+&lt;Lock&gt;c__AnonStorey4`1[T]">
       <method name="T &lt;&gt;m__4()">
-        <size>48</size>
+        <size>65</size>
       </method>
-    </type>
-    <type name="Test+&lt;Finally&gt;c__AnonStorey5`1[T]">
       <method name="Void .ctor()">
         <size>7</size>
       </method>
+    </type>
+    <type name="Test+&lt;Catch&gt;c__AnonStorey5`1[T]">
       <method name="T &lt;&gt;m__5()">
-        <size>50</size>
+        <size>48</size>
       </method>
-    </type>
-    <type name="Test+&lt;Using&gt;c__AnonStorey6`1[T]">
       <method name="Void .ctor()">
         <size>7</size>
       </method>
+    </type>
+    <type name="Test+&lt;Finally&gt;c__AnonStorey6`1[T]">
       <method name="T &lt;&gt;m__6()">
+        <size>50</size>
+      </method>
+      <method name="Void .ctor()">
         <size>7</size>
       </method>
     </type>
-    <type name="Test+&lt;Switch&gt;c__AnonStorey7`1[T]">
+    <type name="Test+&lt;Using&gt;c__AnonStorey7`1[T]">
+      <method name="T &lt;&gt;m__7()">
+        <size>7</size>
+      </method>
       <method name="Void .ctor()">
         <size>7</size>
       </method>
-      <method name="T &lt;&gt;m__7()">
+    </type>
+    <type name="Test+&lt;Switch&gt;c__AnonStorey8`1[T]">
+      <method name="T &lt;&gt;m__8()">
         <size>35</size>
       </method>
-    </type>
-    <type name="Test+&lt;ForForeach&gt;c__AnonStorey8`1[T]">
       <method name="Void .ctor()">
         <size>7</size>
       </method>
-      <method name="System.Collections.Generic.List`1[T] &lt;&gt;m__8()">
+    </type>
+    <type name="Test+&lt;ForForeach&gt;c__AnonStorey9`1[T]">
+      <method name="System.Collections.Generic.List`1[T] &lt;&gt;m__9()">
         <size>56</size>
       </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
     </type>
-    <type name="Test">
-      <method name="Void ArrayMutate[T](T[])">
-        <size>27</size>
+    <type name="Test+&lt;ArrayMutate&gt;c__AnonStoreyA`1[T]">
+      <method name="Void &lt;&gt;m__A(Int32)">
+        <size>36</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
       </method>
     </type>
-    <type name="Test+&lt;ArrayMutate&gt;c__AnonStorey9`1[T]">
+    <type name="Test+&lt;ArrayMultiMutate&gt;c__AnonStoreyB`1[T]">
+      <method name="T[][] &lt;&gt;m__B()">
+        <size>48</size>
+      </method>
       <method name="Void .ctor()">
         <size>7</size>
       </method>
-      <method name="Void &lt;&gt;m__9(Int32)">
-        <size>36</size>
+    </type>
+    <type name="CA`1[T]">
+      <method name="Void .ctor()">
+        <size>7</size>
       </method>
     </type>
     <type name="Test">
-      <method name="System.Func`1[T[][]] ArrayMultiMutate[T](T[][])">
+      <method name="System.Func`1[T[]] NestedTypeMutate[T]()">
+        <size>34</size>
+      </method>
+      <method name="System.Func`1[System.Int32] ArrayMultiMutate[T](T[,])">
         <size>26</size>
       </method>
     </type>
-    <type name="Test+&lt;ArrayMultiMutate&gt;c__AnonStoreyA`1[T]">
+    <type name="Test+&lt;ArrayMultiMutate&gt;c__AnonStoreyC`1[T]">
+      <method name="Int32 &lt;&gt;m__C()">
+        <size>27</size>
+      </method>
       <method name="Void .ctor()">
         <size>7</size>
       </method>
-      <method name="T[][] &lt;&gt;m__A()">
-        <size>48</size>
+    </type>
+    <type name="Test+&lt;NestedTypeMutate&gt;c__AnonStoreyD`1[T]">
+      <method name="T[] &lt;&gt;m__D()">
+        <size>37</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
       </method>
     </type>
   </test>
         <size>7</size>
       </method>
       <method name="Int32 Main()">
-        <size>44</size>
+        <size>42</size>
       </method>
     </type>
     <type name="Foo`1+&lt;ContainsAll&gt;c__AnonStorey0`1[T,U]">
         <size>7</size>
       </method>
     </type>
+    <type name="&lt;PrivateImplementationDetails&gt;">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
   </test>
   <test name="gtest-anon-39.cs">
     <type name="Test">
       </method>
     </type>
     <type name="Test">
-      <method name="Void .ctor()">
-        <size>7</size>
-      </method>
       <method name="Int32 Main()">
         <size>59</size>
       </method>
       <method name="Void &lt;Main&gt;m__3(Int32, Int32, Int32)">
         <size>23</size>
       </method>
-    </type>
-    <type name="C+&lt;Curry&gt;c__AnonStorey0`3[T1,T2,T3]">
       <method name="Void .ctor()">
         <size>7</size>
       </method>
+    </type>
+    <type name="C+&lt;Curry&gt;c__AnonStorey0`3[T1,T2,T3]">
       <method name="System.Func`2[T2,System.Action`1[T3]] &lt;&gt;m__0(T1)">
         <size>33</size>
       </method>
-    </type>
-    <type name="C+&lt;Curry&gt;c__AnonStorey0`3+&lt;Curry&gt;c__AnonStorey1`3[T1,T2,T3]">
       <method name="Void .ctor()">
         <size>7</size>
       </method>
+    </type>
+    <type name="C+&lt;Curry&gt;c__AnonStorey0`3+&lt;Curry&gt;c__AnonStorey1`3[T1,T2,T3]">
       <method name="System.Action`1[T3] &lt;&gt;m__1(T2)">
         <size>45</size>
       </method>
-    </type>
-    <type name="C+&lt;Curry&gt;c__AnonStorey0`3+&lt;Curry&gt;c__AnonStorey1`3+&lt;Curry&gt;c__AnonStorey2`3[T1,T2,T3]">
       <method name="Void .ctor()">
         <size>7</size>
       </method>
+    </type>
+    <type name="C+&lt;Curry&gt;c__AnonStorey0`3+&lt;Curry&gt;c__AnonStorey1`3+&lt;Curry&gt;c__AnonStorey2`3[T1,T2,T3]">
       <method name="Void &lt;&gt;m__2(T3)">
         <size>35</size>
       </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
     </type>
   </test>
   <test name="gtest-anon-48.cs">
       </method>
     </type>
   </test>
+  <test name="gtest-anon-57.cs">
+    <type name="X`1[T]">
+      <method name="Void IFoo&lt;T&gt;.Test()">
+        <size>37</size>
+      </method>
+      <method name="Void &lt;Test&gt;m__0()">
+        <size>7</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="M">
+      <method name="Void Main()">
+        <size>13</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="Foo">
+      <method name="Void Invoke()">
+        <size>0</size>
+      </method>
+      <method name="IAsyncResult BeginInvoke(System.AsyncCallback, System.Object)">
+        <size>0</size>
+      </method>
+      <method name="Void EndInvoke(IAsyncResult)">
+        <size>0</size>
+      </method>
+      <method name="Void .ctor(Object, IntPtr)">
+        <size>0</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-anon-58.cs">
+    <type name="Test">
+      <method name="X Foo[X](Boolean)">
+        <size>45</size>
+      </method>
+      <method name="X FooNested[X](Boolean)">
+        <size>66</size>
+      </method>
+      <method name="Int32 Main()">
+        <size>36</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="Test+&lt;Foo&gt;c__AnonStorey0`1[X]">
+      <method name="X &lt;&gt;m__0()">
+        <size>12</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="Test+&lt;FooNested&gt;c__AnonStorey1`1[X]">
+      <method name="Call`1[X] &lt;&gt;m__1()">
+        <size>12</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-anon-59.cs">
+    <type name="TestGenericsSubtypeMatching.Sender`1[T]">
+      <method name="Void DoSend[TMessage](System.Action`1[T])">
+        <size>83</size>
+      </method>
+      <method name="Void Send(System.Action`1[T])">
+        <size>1</size>
+      </method>
+      <method name="Void ActionOnObject(System.Object)">
+        <size>8</size>
+      </method>
+      <method name="Void Dispose()">
+        <size>11</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="TestGenericsSubtypeMatching.C">
+      <method name="Void Main()">
+        <size>40</size>
+      </method>
+      <method name="Void &lt;Main&gt;m__1(System.String)">
+        <size>7</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="TestGenericsSubtypeMatching.Sender`1+&lt;DoSend&gt;c__AnonStorey0`1[T,TMessage]">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="TestGenericsSubtypeMatching.Sender`1+&lt;DoSend&gt;c__AnonStorey1`1[T,TMessage]">
+      <method name="Void &lt;&gt;m__0(T)">
+        <size>35</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
   <test name="gtest-anon-6.cs">
     <type name="X">
       <method name="Void .ctor()">
       </method>
     </type>
   </test>
+  <test name="gtest-anon-60.cs">
+    <type name="TestGenericsSubtypeMatching.Sender`1[T]">
+      <method name="Void DoSend[TMessage](System.Action`1[T])">
+        <size>83</size>
+      </method>
+      <method name="Void Send(System.Action`1[T])">
+        <size>1</size>
+      </method>
+      <method name="Void ActionOnObject(System.Object)">
+        <size>8</size>
+      </method>
+      <method name="Void Dispose()">
+        <size>11</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="TestGenericsSubtypeMatching.C">
+      <method name="Int32 Main()">
+        <size>41</size>
+      </method>
+      <method name="Void &lt;Main&gt;m__1(Int32)">
+        <size>7</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="TestGenericsSubtypeMatching.Sender`1+&lt;DoSend&gt;c__AnonStorey0`1[T,TMessage]">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="TestGenericsSubtypeMatching.Sender`1+&lt;DoSend&gt;c__AnonStorey1`1[T,TMessage]">
+      <method name="Void &lt;&gt;m__0(T)">
+        <size>35</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-anon-61.cs">
+    <type name="TestCase">
+      <method name="Void Main()">
+        <size>32</size>
+      </method>
+      <method name="Void Test[T](IList`1)">
+        <size>33</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="&lt;PrivateImplementationDetails&gt;">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="TestCase+&lt;Test&gt;c__AnonStorey0`1[T]">
+      <method name="Void &lt;&gt;m__0()">
+        <size>46</size>
+      </method>
+      <method name="Int32 &lt;&gt;m__1(IList`1)">
+        <size>2</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-anon-62.cs">
+    <type name="D">
+      <method name="Void Invoke(System.Object)">
+        <size>0</size>
+      </method>
+      <method name="IAsyncResult BeginInvoke(System.Object, System.AsyncCallback, System.Object)">
+        <size>0</size>
+      </method>
+      <method name="Void EndInvoke(IAsyncResult)">
+        <size>0</size>
+      </method>
+      <method name="Void .ctor(Object, IntPtr)">
+        <size>0</size>
+      </method>
+    </type>
+    <type name="T">
+      <method name="Void Assert(System.Object)">
+        <size>1</size>
+      </method>
+      <method name="Void Execute(System.Action)">
+        <size>1</size>
+      </method>
+      <method name="D GetD[T](System.Object)">
+        <size>33</size>
+      </method>
+      <method name="Void Main()">
+        <size>24</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="T+&lt;GetD&gt;c__AnonStorey2`1[T]">
+      <method name="Void &lt;&gt;m__0(System.Object)">
+        <size>77</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="T+&lt;GetD&gt;c__AnonStorey2`1+&lt;GetD&gt;c__AnonStorey0`1[T]">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="T+&lt;GetD&gt;c__AnonStorey2`1+&lt;GetD&gt;c__AnonStorey1`1[T]">
+      <method name="Void &lt;&gt;m__1()">
+        <size>51</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
   <test name="gtest-anon-7.cs">
     <type name="MyDisposable">
       <method name="Void .ctor()">
         <size>7</size>
       </method>
       <method name="Boolean Equals(System.Object)">
-        <size>89</size>
+        <size>91</size>
       </method>
     </type>
     <type name="Indexer">
         <size>300</size>
       </method>
       <method name="System.Int64[] GetValues()">
-        <size>23</size>
+        <size>18</size>
       </method>
     </type>
     <type name="Mono.C+&lt;Main&gt;c__AnonStorey0">
         <size>7</size>
       </method>
     </type>
+    <type name="&lt;PrivateImplementationDetails&gt;">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
   </test>
   <test name="gtest-etree-10.cs">
     <type name="Foo`1[T]">
         <size>7</size>
       </method>
       <method name="Int32 Main()">
-        <size>44</size>
+        <size>42</size>
       </method>
     </type>
     <type name="Foo`1+&lt;ContainsAll&gt;c__AnonStorey0`1[T,U]">
         <size>7</size>
       </method>
     </type>
+    <type name="&lt;PrivateImplementationDetails&gt;">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
   </test>
   <test name="gtest-etree-11.cs">
     <type name="C">
       </method>
     </type>
   </test>
+  <test name="gtest-etree-22.cs">
+    <type name="FieldInfoBug.MonoRuntime">
+      <method name="Int32 Main()">
+        <size>13</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="FieldInfoBug.GenericClass`1[T]">
+      <method name="Void .ctor(String)">
+        <size>58</size>
+      </method>
+    </type>
+    <type name="FieldInfoBug.GenericClass`1+&lt;GenericClass&gt;c__AnonStorey0[T]">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-etree-23.cs">
+    <type name="Test.OrderBySpecification">
+      <method name="Void .ctor(Expression`1)">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="Test.RateOrderById">
+      <method name="Int32 Main()">
+        <size>8</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>44</size>
+      </method>
+    </type>
+  </test>
   <test name="gtest-exmethod-01.cs">
     <type name="SimpleTest">
       <method name="System.String Prefix(System.String, System.String)">
       </method>
     </type>
   </test>
+  <test name="gtest-exmethod-30.cs">
+    <type name="Test">
+      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()">
+        <size>2</size>
+      </method>
+      <method name="Int32 get_First()">
+        <size>2</size>
+      </method>
+      <method name="IEnumerator`1 GetEnumerator()">
+        <size>2</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="C">
+      <method name="Void Test()">
+        <size>14</size>
+      </method>
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-exmethod-31.cs">
+    <type name="N.S">
+      <method name="Void Map[T](Int32, System.Func`2[T,System.String])">
+        <size>1</size>
+      </method>
+    </type>
+    <type name="N2.S2">
+      <method name="Void Map(Int32, Int32)">
+        <size>1</size>
+      </method>
+    </type>
+    <type name="M.C">
+      <method name="Void Main()">
+        <size>8</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-exmethod-32.cs">
+    <type name="A">
+      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()">
+        <size>2</size>
+      </method>
+      <method name="Int32 get_Count()">
+        <size>2</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="G`1[T]">
+      <method name="Void Test()">
+        <size>20</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="Extensions">
+      <method name="Int32 Count(IEnumerable)">
+        <size>2</size>
+      </method>
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-exmethod-33.cs">
+    <type name="Prop">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="HelperExtensions">
+      <method name="Void Foo(I, I)">
+        <size>1</size>
+      </method>
+    </type>
+    <type name="C">
+      <method name="I get_Prop()">
+        <size>2</size>
+      </method>
+      <method name="System.Int32[] get_Loc()">
+        <size>2</size>
+      </method>
+      <method name="Void Test()">
+        <size>13</size>
+      </method>
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-exmethod-34.cs">
+    <type name="Program">
+      <method name="Void Foo(System.Object)">
+        <size>1</size>
+      </method>
+      <method name="Void Main()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
   <test name="gtest-friend-01.cs">
     <type name="Test">
       <method name="Void .ctor()">
         <size>7</size>
       </method>
       <method name="Int32 Main()">
-        <size>282</size>
+        <size>280</size>
       </method>
     </type>
     <type name="&lt;PrivateImplementationDetails&gt;">
         <size>7</size>
       </method>
       <method name="Int32 Main()">
-        <size>54</size>
+        <size>53</size>
+      </method>
+    </type>
+    <type name="&lt;PrivateImplementationDetails&gt;">
+      <method name="Void .ctor()">
+        <size>7</size>
       </method>
     </type>
   </test>
         <size>7</size>
       </method>
       <method name="Boolean MoveNext()">
-        <size>183</size>
+        <size>184</size>
       </method>
       <method name="Void Dispose()">
         <size>8</size>
         <size>30</size>
       </method>
       <method name="Int32 Main()">
-        <size>94</size>
+        <size>78</size>
       </method>
     </type>
     <type name="Test+&lt;Create&gt;c__Iterator0`1[T]">
         <size>40</size>
       </method>
     </type>
+    <type name="&lt;PrivateImplementationDetails&gt;">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
   </test>
   <test name="gtest-iter-10.cs">
     <type name="Test">
       </method>
     </type>
   </test>
+  <test name="gtest-iter-12.cs">
+    <type name="H">
+      <method name="Void Main(System.String[])">
+        <size>1</size>
+      </method>
+      <method name="IEnumerable`1 Merge[T](IEnumerator`1)">
+        <size>30</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="H+&lt;Merge&gt;c__Iterator0`1[T]">
+      <method name="T System.Collections.Generic.IEnumerator&lt;T&gt;.get_Current()">
+        <size>7</size>
+      </method>
+      <method name="System.Object System.Collections.IEnumerator.get_Current()">
+        <size>12</size>
+      </method>
+      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()">
+        <size>7</size>
+      </method>
+      <method name="IEnumerator`1 System.Collections.Generic.IEnumerable&lt;T&gt;.GetEnumerator()">
+        <size>40</size>
+      </method>
+      <method name="Boolean MoveNext()">
+        <size>117</size>
+      </method>
+      <method name="Void Dispose()">
+        <size>8</size>
+      </method>
+      <method name="Void Reset()">
+        <size>6</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-iter-13.cs">
+    <type name="C`1[T]">
+      <method name="IEnumerator GetEnumerator()">
+        <size>12</size>
+      </method>
+      <method name="IEnumerable`1 Filter(System.Func`2[T,System.Boolean])">
+        <size>37</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="M">
+      <method name="Void Main()">
+        <size>57</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="C`1+&lt;Filter&gt;c__Iterator0[T]">
+      <method name="T System.Collections.Generic.IEnumerator&lt;T&gt;.get_Current()">
+        <size>7</size>
+      </method>
+      <method name="System.Object System.Collections.IEnumerator.get_Current()">
+        <size>12</size>
+      </method>
+      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()">
+        <size>7</size>
+      </method>
+      <method name="IEnumerator`1 System.Collections.Generic.IEnumerable&lt;T&gt;.GetEnumerator()">
+        <size>52</size>
+      </method>
+      <method name="Boolean MoveNext()">
+        <size>203</size>
+      </method>
+      <method name="Void Dispose()">
+        <size>62</size>
+      </method>
+      <method name="Void Reset()">
+        <size>6</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
   <test name="gtest-lambda-01.cs">
     <type name="X">
       <method name="Int32 Main()">
         <size>2</size>
       </method>
       <method name="Int32 Main()">
-        <size>652</size>
+        <size>648</size>
       </method>
       <method name="&lt;&gt;__AnonType0`2[System.Int32,System.Boolean] &lt;Main&gt;m__0(Int32)">
         <size>42</size>
       </method>
     </type>
   </test>
+  <test name="gtest-optional-08.cs">
+    <type name="Tests">
+      <method name="Int32 Main()">
+        <size>36</size>
+      </method>
+      <method name="Void .ctor(String)">
+        <size>14</size>
+      </method>
+      <method name="Void .ctor(Int32)">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
   <test name="gtest-partial-01.cs">
     <type name="B`1[U]">
       <method name="Void .ctor()">
       </method>
     </type>
   </test>
+  <test name="gtest-partial-02.cs">
+    <type name="A`1[T]">
+      <method name="Void Test()">
+        <size>13</size>
+      </method>
+      <method name="T get_CurrentItem()">
+        <size>7</size>
+      </method>
+      <method name="Void set_CurrentItem(T)">
+        <size>8</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="C">
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
   <test name="gtest-var-04.cs">
     <type name="Test">
       <method name="Void .ctor()">
       </method>
     </type>
   </test>
+  <test name="gtest-variance-1.cs">
+    <type name="Foo">
+      <method name="System.String get_Bar()">
+        <size>7</size>
+      </method>
+      <method name="Void .ctor(String)">
+        <size>14</size>
+      </method>
+    </type>
+    <type name="Test">
+      <method name="Int32 Main()">
+        <size>57</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-variance-10.cs">
+    <type name="Foo">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="Test">
+      <method name="Int32 I&lt;string&gt;.get_Count()">
+        <size>2</size>
+      </method>
+      <method name="Int32 I&lt;Foo&gt;.get_Count()">
+        <size>2</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="Program">
+      <method name="Int32 Main()">
+        <size>29</size>
+      </method>
+    </type>
+  </test>
   <test name="gtest-variance-11.cs">
     <type name="D">
       <method name="Void .ctor()">
       </method>
     </type>
   </test>
+  <test name="gtest-variance-12.cs">
+    <type name="D">
+      <method name="Void add_field(D`1[System.String])">
+        <size>24</size>
+      </method>
+      <method name="Void remove_field(D`1[System.String])">
+        <size>24</size>
+      </method>
+      <method name="Int32 Main()">
+        <size>72</size>
+      </method>
+      <method name="Void &lt;Main&gt;m__0()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="D`1[T]">
+      <method name="Void Invoke()">
+        <size>0</size>
+      </method>
+      <method name="IAsyncResult BeginInvoke(System.AsyncCallback, System.Object)">
+        <size>0</size>
+      </method>
+      <method name="Void EndInvoke(IAsyncResult)">
+        <size>0</size>
+      </method>
+      <method name="Void .ctor(Object, IntPtr)">
+        <size>0</size>
+      </method>
+    </type>
+  </test>
   <test name="gtest-variance-13.cs">
     <type name="A">
       <method name="Void .ctor()">
       </method>
     </type>
   </test>
+  <test name="gtest-variance-2.cs">
+    <type name="Foo">
+      <method name="System.String Bar(System.Object)">
+        <size>12</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="Test">
+      <method name="Int32 Main()">
+        <size>92</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-variance-3.cs">
+    <type name="Test">
+      <method name="Int32 Main()">
+        <size>56</size>
+      </method>
+      <method name="Int32 Bar(Foo`1[System.Object])">
+        <size>12</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="Foo`1[T]">
+      <method name="T Invoke()">
+        <size>0</size>
+      </method>
+      <method name="IAsyncResult BeginInvoke(System.AsyncCallback, System.Object)">
+        <size>0</size>
+      </method>
+      <method name="T EndInvoke(IAsyncResult)">
+        <size>0</size>
+      </method>
+      <method name="Void .ctor(Object, IntPtr)">
+        <size>0</size>
+      </method>
+    </type>
+    <type name="Test+&lt;Main&gt;c__AnonStorey0">
+      <method name="System.String &lt;&gt;m__0()">
+        <size>7</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-variance-4.cs">
+    <type name="Test">
+      <method name="Int32 Main()">
+        <size>58</size>
+      </method>
+      <method name="Int32 Bar(Foo`1[System.String], System.String)">
+        <size>8</size>
+      </method>
+      <method name="Int32 &lt;Main&gt;m__0(System.Object)">
+        <size>7</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="Foo`1[T]">
+      <method name="Int32 Invoke(T)">
+        <size>0</size>
+      </method>
+      <method name="IAsyncResult BeginInvoke(T, System.AsyncCallback, System.Object)">
+        <size>0</size>
+      </method>
+      <method name="Int32 EndInvoke(IAsyncResult)">
+        <size>0</size>
+      </method>
+      <method name="Void .ctor(Object, IntPtr)">
+        <size>0</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-variance-5.cs">
+    <type name="BothVariants`2[T1,T2]">
+      <method name="T1 get_Foo()">
+        <size>7</size>
+      </method>
+      <method name="Void set_Foo(T1)">
+        <size>8</size>
+      </method>
+      <method name="Int32 Bar(T2)">
+        <size>35</size>
+      </method>
+      <method name="Void .ctor(T1)">
+        <size>14</size>
+      </method>
+    </type>
+    <type name="Invariant`1[T]">
+      <method name="T get_Foo()">
+        <size>36</size>
+      </method>
+      <method name="Int32 Bar(T)">
+        <size>14</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="A">
+      <method name="System.String get_Fruit()">
+        <size>6</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="B">
+      <method name="System.String get_Fruit()">
+        <size>6</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="C">
+      <method name="System.String get_Fruit()">
+        <size>6</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="Test">
+      <method name="Int32 Main()">
+        <size>110</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
   <test name="gtest-variance-6.cs">
     <type name="Program">
       <method name="Void .ctor()">
       </method>
     </type>
   </test>
+  <test name="gtest-variance-8.cs">
+    <type name="A`1[T]">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="C">
+      <method name="Int32 Main()">
+        <size>144</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
   <test name="gtest-variance-9.cs">
     <type name="Test">
       <method name="Void .ctor()">
         <size>12</size>
       </method>
       <method name="Int32 Main()">
-        <size>25</size>
+        <size>29</size>
       </method>
     </type>
   </test>
         <size>34</size>
       </method>
       <method name="Int32 Test2()">
-        <size>47</size>
+        <size>46</size>
       </method>
       <method name="Int32 Main()">
         <size>40</size>
         <size>0</size>
       </method>
     </type>
+    <type name="&lt;PrivateImplementationDetails&gt;">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
   </test>
   <test name="test-260.cs">
     <type name="x.Test">
         <size>17</size>
       </method>
       <method name="Int32 Main()">
-        <size>84</size>
+        <size>86</size>
       </method>
     </type>
   </test>
     </type>
     <type name="X">
       <method name="IEnumerator GetEnumerator()">
-        <size>36</size>
+        <size>35</size>
+      </method>
+    </type>
+    <type name="&lt;PrivateImplementationDetails&gt;">
+      <method name="Void .ctor()">
+        <size>7</size>
       </method>
     </type>
   </test>
         <size>84</size>
       </method>
       <method name="Int32 Main()">
-        <size>309</size>
+        <size>284</size>
+      </method>
+    </type>
+    <type name="&lt;PrivateImplementationDetails&gt;">
+      <method name="Void .ctor()">
+        <size>7</size>
       </method>
     </type>
   </test>
         <size>7</size>
       </method>
       <method name="Void .cctor()">
-        <size>98</size>
+        <size>97</size>
       </method>
       <method name="Int32 Main()">
-        <size>794</size>
+        <size>755</size>
       </method>
     </type>
     <type name="&lt;PrivateImplementationDetails&gt;">
       </method>
     </type>
   </test>
-  <test name="test-450.cs">
-    <type name="MyAttribute">
-      <method name="Void .ctor(String)">
-        <size>7</size>
-      </method>
-    </type>
-    <type name="X">
-      <method name="Void .ctor()">
-        <size>7</size>
-      </method>
-      <method name="Void Main()">
-        <size>1</size>
-      </method>
-    </type>
-  </test>
   <test name="test-451.cs">
     <type name="Test">
       <method name="Void .ctor()">
       </method>
     </type>
   </test>
-  <test name="test-454.cs">
-    <type name="FooAttribute">
-      <method name="Void .ctor()">
-        <size>7</size>
-      </method>
-    </type>
-    <type name="Test">
-      <method name="Void .ctor()">
-        <size>7</size>
-      </method>
-      <method name="Int32 Main()">
-        <size>237</size>
-      </method>
-    </type>
-  </test>
   <test name="test-455.cs">
     <type name="Test">
       <method name="Void .ctor()">
         <size>7</size>
       </method>
       <method name="Void Main()">
-        <size>21</size>
+        <size>25</size>
       </method>
     </type>
     <type name="Foo">
         <size>33</size>
       </method>
       <method name="Void Test2()">
-        <size>67</size>
+        <size>66</size>
       </method>
       <method name="Void Main()">
         <size>39</size>
       </method>
     </type>
+    <type name="&lt;PrivateImplementationDetails&gt;">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
   </test>
   <test name="test-526.cs">
     <type name="Test">
         <size>7</size>
       </method>
       <method name="Int32 Main()">
-        <size>40</size>
+        <size>120</size>
       </method>
     </type>
   </test>
         <size>73</size>
       </method>
       <method name="Void Or()">
-        <size>137</size>
+        <size>129</size>
       </method>
       <method name="Int32 Main()">
         <size>70</size>
         <size>7</size>
       </method>
       <method name="Void ZeroBasedReductions()">
-        <size>9</size>
+        <size>18</size>
       </method>
       <method name="Void Main()">
-        <size>1</size>
+        <size>6</size>
       </method>
     </type>
   </test>
         <size>79</size>
       </method>
       <method name="Void TestOr(Boolean)">
-        <size>92</size>
+        <size>88</size>
       </method>
       <method name="Void Test(Boolean)">
         <size>13</size>
         <size>11</size>
       </method>
       <method name="Void Main()">
-        <size>169</size>
+        <size>167</size>
       </method>
     </type>
   </test>
         <size>7</size>
       </method>
       <method name="Int32 Main()">
-        <size>61</size>
+        <size>65</size>
       </method>
     </type>
   </test>
   <test name="test-733.cs">
     <type name="Test">
       <method name="Int32 Main()">
-        <size>43</size>
+        <size>86</size>
       </method>
       <method name="Void .ctor()">
         <size>7</size>
   <test name="test-734.cs">
     <type name="M">
       <method name="Void Run()">
+        <size>23</size>
+      </method>
+      <method name="Int32 Main()">
+        <size>72</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-735.cs">
+    <type name="B">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="B+C">
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="B+C+X">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="B+D">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-736.cs">
+    <type name="TestGeneric`1[T]">
+      <method name="Void add_Event(System.EventHandler)">
+        <size>24</size>
+      </method>
+      <method name="Void remove_Event(System.EventHandler)">
+        <size>24</size>
+      </method>
+      <method name="Void Raise()">
+        <size>18</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="TestGeneric2`1[T]">
+      <method name="Void add_Event(TestGeneric2`1+GenericHandler[T])">
+        <size>24</size>
+      </method>
+      <method name="Void remove_Event(TestGeneric2`1+GenericHandler[T])">
+        <size>24</size>
+      </method>
+      <method name="Void Raise()">
+        <size>21</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="Test">
+      <method name="Void add_Event(System.EventHandler)">
+        <size>24</size>
+      </method>
+      <method name="Void remove_Event(System.EventHandler)">
+        <size>24</size>
+      </method>
+      <method name="Void Raise()">
+        <size>18</size>
+      </method>
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="TestGeneric2`1+GenericHandler[T]">
+      <method name="Void Invoke(T)">
+        <size>0</size>
+      </method>
+      <method name="IAsyncResult BeginInvoke(T, System.AsyncCallback, System.Object)">
+        <size>0</size>
+      </method>
+      <method name="Void EndInvoke(IAsyncResult)">
+        <size>0</size>
+      </method>
+      <method name="Void .ctor(Object, IntPtr)">
+        <size>0</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-737.cs">
+    <type name="Breaks">
+      <method name="Double get_Item(Int32, Int32)">
+        <size>7</size>
+      </method>
+      <method name="Void set_Item(Int32, Int32, Double)">
+        <size>8</size>
+      </method>
+      <method name="Void .ctor(Double)">
+        <size>8</size>
+      </method>
+    </type>
+    <type name="Tester">
+      <method name="Int32 Main()">
+        <size>80</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-738.cs">
+    <type name="TestNamespace.ResumableInputStream">
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>18</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-739.cs">
+    <type name="X">
+      <method name="Void Finalize()">
         <size>19</size>
       </method>
+      <method name="Void Foo()">
+        <size>1</size>
+      </method>
       <method name="Int32 Main()">
-        <size>12</size>
+        <size>89</size>
       </method>
       <method name="Void .ctor()">
         <size>7</size>
       </method>
     </type>
   </test>
+  <test name="test-740.cs">
+    <type name="FixedTest">
+      <method name="Int32 Main()">
+        <size>348</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="FixedTest+TValue">
+      <method name="System.String ToString()">
+        <size>17</size>
+      </method>
+      <method name="Void .ctor(Int64)">
+        <size>28</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-741.cs">
+    <type name="Test">
+      <method name="Void test()">
+        <size>18</size>
+      </method>
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-742.cs">
+    <type name="Test">
+      <method name="Test Set(C)">
+        <size>20</size>
+      </method>
+    </type>
+    <type name="C">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="Driver">
+      <method name="Int32 Main()">
+        <size>41</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-743.cs">
+    <type name="C">
+      <method name="Void Main()">
+        <size>11</size>
+      </method>
+      <method name="Void Test()">
+        <size>30</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-744.cs">
+    <type name="M">
+      <method name="Void Main()">
+        <size>7</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="M+Nested">
+      <method name="Void Extra()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="A">
+      <method name="Void AMethod()">
+        <size>0</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="B">
+      <method name="Void BMethod()">
+        <size>0</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="C">
+      <method name="Void AMethod()">
+        <size>1</size>
+      </method>
+      <method name="Void BMethod()">
+        <size>1</size>
+      </method>
+      <method name="Void Extra()">
+        <size>0</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-745.cs">
+    <type name="C">
+      <method name="Void Main()">
+        <size>28</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-746.cs">
+    <type name="Test">
+      <method name="Void Foo(IListCounter)">
+        <size>8</size>
+      </method>
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-747.cs">
+    <type name="B">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="B+BNested">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="A">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="AA">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="AA+ANested">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="M">
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-748.cs">
+    <type name="M">
+      <method name="RealTest.Foo Test()">
+        <size>6</size>
+      </method>
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="Test.Local.M">
+      <method name="RealTest.Foo Test()">
+        <size>6</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="RealTest.Foo">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-749.cs">
+    <type name="M">
+      <method name="Void Main()">
+        <size>14</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
   <test name="test-75.cs">
     <type name="X">
       <method name="Void .ctor()">
       </method>
     </type>
   </test>
+  <test name="test-750.cs">
+    <type name="M">
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-751.cs">
+    <type name="LocalNS.Compiler">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="System.Local.M">
+      <method name="Void Main()">
+        <size>7</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-752.cs">
+    <type name="M">
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-753.cs">
+    <type name="AI2">
+      <method name="System.String IA.get_val()">
+        <size>6</size>
+      </method>
+      <method name="Void IA.set_val(System.String)">
+        <size>1</size>
+      </method>
+      <method name="Int32 get_val()">
+        <size>3</size>
+      </method>
+      <method name="Void set_val(Int32)">
+        <size>1</size>
+      </method>
+      <method name="Void stuff(IAI2)">
+        <size>13</size>
+      </method>
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-754.cs">
+    <type name="Bug.D">
+      <method name="Void Invoke()">
+        <size>0</size>
+      </method>
+      <method name="IAsyncResult BeginInvoke(System.AsyncCallback, System.Object)">
+        <size>0</size>
+      </method>
+      <method name="Void EndInvoke(IAsyncResult)">
+        <size>0</size>
+      </method>
+      <method name="Void .ctor(Object, IntPtr)">
+        <size>0</size>
+      </method>
+    </type>
+    <type name="Bug.A">
+      <method name="Void add_E(Bug.D)">
+        <size>0</size>
+      </method>
+      <method name="Void remove_E(Bug.D)">
+        <size>0</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="Bug.B">
+      <method name="Void add_E(Bug.D)">
+        <size>1</size>
+      </method>
+      <method name="Void remove_E(Bug.D)">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="Bug.M">
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-755.cs">
+    <type name="Item">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+      <method name="Void .cctor()">
+        <size>8</size>
+      </method>
+    </type>
+    <type name="Item+Builder">
+      <method name="Int32 get_Foo()">
+        <size>6</size>
+      </method>
+      <method name="System.Object get_Item(Int32)">
+        <size>2</size>
+      </method>
+      <method name="System.Object get_Item(Int32, Int32)">
+        <size>2</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="Program">
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-756.cs">
+    <type name="UnsafeTest">
+      <method name="Void Main()">
+        <size>12</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-757.cs">
+    <type name="TestClass1">
+      <method name="Void Test()">
+        <size>34</size>
+      </method>
+      <method name="Int32 Main()">
+        <size>20</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="&lt;PrivateImplementationDetails&gt;">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-758.cs">
+    <type name="C">
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="D">
+      <method name="Void Finalize()">
+        <size>13</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
   <test name="test-76.cs">
     <type name="foo">
       <method name="Void .ctor()">
       </method>
     </type>
   </test>
+  <test name="test-760.cs">
+    <type name="A">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="Test">
+      <method name="Void Main()">
+        <size>7</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-761.cs">
+    <type name="C">
+      <method name="Int32 get_I()">
+        <size>7</size>
+      </method>
+      <method name="Void set_I(Int32)">
+        <size>8</size>
+      </method>
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-762.cs">
+    <type name="N1.Derived.Dummy">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="N2.Derived.Dummy">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="DerivedAttribute">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="T">
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-763.cs">
+    <type name="StaticDelegateWithSameNameAsInstance">
+      <method name="Void set_MyProvider(StaticDelegateWithSameNameAsInstance+Provider)">
+        <size>35</size>
+      </method>
+      <method name="Void StaticCallback()">
+        <size>31</size>
+      </method>
+      <method name="Void StaticCallback(System.String)">
+        <size>35</size>
+      </method>
+      <method name="Int32 Main()">
+        <size>36</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+      <method name="Void .cctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="StaticDelegateWithSameNameAsInstance+Provider">
+      <method name="Void Invoke(System.String)">
+        <size>0</size>
+      </method>
+      <method name="IAsyncResult BeginInvoke(System.String, System.AsyncCallback, System.Object)">
+        <size>0</size>
+      </method>
+      <method name="Void EndInvoke(IAsyncResult)">
+        <size>0</size>
+      </method>
+      <method name="Void .ctor(Object, IntPtr)">
+        <size>0</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-764.cs">
+    <type name="Item">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+      <method name="Void .cctor()">
+        <size>11</size>
+      </method>
+    </type>
+    <type name="Caller">
+      <method name="System.String get_Item(System.String)">
+        <size>2</size>
+      </method>
+      <method name="Int32 get_Item(Int32)">
+        <size>2</size>
+      </method>
+      <method name="Void Foo()">
+        <size>12</size>
+      </method>
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-765.cs">
+    <type name="B">
+      <method name="Void Foo(Int32)">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="A">
+      <method name="Void Foo(System.String)">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="Test">
+      <method name="Void Main()">
+        <size>11</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-766.cs">
+    <type name="A.Color">
+      <method name="Color get_Base()">
+        <size>6</size>
+      </method>
+      <method name="Color get_NewBase()">
+        <size>7</size>
+      </method>
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="B.Color">
+      <method name="Color From(Int32)">
+        <size>10</size>
+      </method>
+      <method name="Void .cctor()">
+        <size>15</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-767.cs">
+    <type name="Test">
+      <method name="Int32 Foo()">
+        <size>2</size>
+      </method>
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="S">
+      <method name="Test get_Test()">
+        <size>6</size>
+      </method>
+      <method name="Void .cctor()">
+        <size>11</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-768.cs">
+    <type name="A.N.Wrong">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="N.C">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="X.TestClass">
+      <method name="Void Main()">
+        <size>7</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-769.cs">
+    <type name="C">
+      <method name="Void I.Clear()">
+        <size>1</size>
+      </method>
+      <method name="Void Clear()">
+        <size>1</size>
+      </method>
+      <method name="Int32 Main()">
+        <size>114</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
   <test name="test-77.cs">
     <type name="XX">
       <method name="Void .ctor()">
         <size>19</size>
       </method>
       <method name="Int32 Main()">
-        <size>67</size>
+        <size>63</size>
+      </method>
+    </type>
+    <type name="&lt;PrivateImplementationDetails&gt;">
+      <method name="Void .ctor()">
+        <size>7</size>
       </method>
     </type>
   </test>
         <size>22</size>
       </method>
       <method name="Int32 Main()">
-        <size>33</size>
+        <size>32</size>
       </method>
     </type>
     <type name="X+A">
         <size>7</size>
       </method>
     </type>
+    <type name="&lt;PrivateImplementationDetails&gt;">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
   </test>
   <test name="test-anon-53.cs">
     <type name="Test">
         <size>22</size>
       </method>
       <method name="Int32 Main()">
-        <size>34</size>
+        <size>32</size>
       </method>
     </type>
     <type name="X+A">
         <size>7</size>
       </method>
     </type>
+    <type name="&lt;PrivateImplementationDetails&gt;">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
   </test>
   <test name="test-anon-64.cs">
     <type name="Source">
         <size>1</size>
       </method>
       <method name="Void Main()">
-        <size>99</size>
+        <size>98</size>
       </method>
     </type>
     <type name="C+D">
         <size>3</size>
       </method>
     </type>
+    <type name="&lt;PrivateImplementationDetails&gt;">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
   </test>
   <test name="test-anon-71.cs">
     <type name="Program">
       </method>
     </type>
   </test>
+  <test name="test-cls-19.cs">
+    <type name="A">
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="A+PartialClass">
+      <method name="Void Method1(Int32)">
+        <size>1</size>
+      </method>
+      <method name="Void Method2(UInt32)">
+        <size>1</size>
+      </method>
+      <method name="Void Method3(UInt32)">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
   <test name="test-externalias-01.cs">
     <type name="Test">
       <method name="Void .ctor()">
         <size>30</size>
       </method>
       <method name="Int32 Main()">
-        <size>245</size>
+        <size>244</size>
       </method>
     </type>
     <type name="&lt;PrivateImplementationDetails&gt;">
         <size>7</size>
       </method>
       <method name="Boolean MoveNext()">
-        <size>147</size>
+        <size>145</size>
       </method>
       <method name="Void Dispose()">
         <size>8</size>
       </method>
     </type>
   </test>
+  <test name="test-named-04.cs">
+    <type name="Program">
+      <method name="Void Foo2(Int32, Int32 ByRef)">
+        <size>40</size>
+      </method>
+      <method name="Int32 Main()">
+        <size>239</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
   <test name="test-partial-01.cs">
     <type name="Foo.Hello">
       <method name="Void .ctor()">
       </method>
     </type>
   </test>
+  <test name="test-partial-27.cs">
+    <type name="C">
+      <method name="Int32 Main()">
+        <size>2</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-partial-28.cs">
+    <type name="A">
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="TestCase">
+      <method name="Void Main()">
+        <size>1</size>
+      </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
   <test name="test-var-01.cs">
     <type name="Test">
       <method name="Void .ctor()">