↑ Up

Vampire---5.0.1.UNS-Ref.s

View TPTP
Problem
Process solution in
SystemOnTSTP
Download .tgz
%------------------------------------------------------------------------------
% File     : Vampire---5.0.1
% Problem  : SWW794_1 : TPTP v9.3.1. Released v7.0.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : run_vampire /export/starexec/sandbox/benchmark/theBenchmark.p 300 THM

% Computer : n006.cluster.edu
% Model    : x86_64 x86_64
% CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz
% Memory   : 8046.5625MB
% OS       : Linux 6.8.0-71-generic
% CPULimit : 300s
% WCLimit  : 300s
% DateTime : Tue Sep 29 01:37:40 PM UTC 2026

% Result   : Unsatisfiable 9.87s 2.11s
% Output   : Refutation 10.66s
% Verified : 
% SZS Type : Refutation
%            Derivation depth      :   20
%            Number of leaves      :    2
% Syntax   : Number of formulae    :   42 (  11 unt;   0 typ;   0 def)
%            Number of atoms       : 16656 (15760 equ)
%            Maximal formula atoms : 1412 ( 396 avg)
%            Number of connectives : 30144 (13530   ~;3474   |;12360   &)
%                                         ( 123 <=>; 657  =>;   0  <=;   0 <~>)
%            Maximal formula depth : 1097 ( 286 avg)
%            Maximal term depth    :    5 (   1 avg)
%            Number of FOOLs       :    3 (   3 fml;   0 var)
%            Number arithmetic     : 6639 ( 875 atm; 430 fun; 914 num;4420 var)
%            Number of types       :    1 (   0 usr;   1 ari;   0 dat;   0 cdt)
%            Number of type conns  :    0 (   0   >;   0   *;   0   +;   0  <<)
%            Number of predicates  :    5 (   0 usr;   2 prp; 0-2 aty)
%            Number of functors    :  245 ( 231 usr;  83 con; 0-5 aty)
%            Number of variables   : 4420 (3718   !; 702   ?;4420   :)

% Comments : 
%------------------------------------------------------------------------------
tff(func_def_0,type,
    ownerRef: $int ).

tff(func_def_1,type,
    localinv: $int ).

tff(func_def_2,type,
    'System_Collections_IEnumerable': $int ).

tff(func_def_3,type,
    'StringEquals': ( $int * $int ) > $int ).

tff(func_def_4,type,
    intLess: ( $int * $int ) > $int ).

tff(func_def_5,type,
    'System_Array': $int ).

tff(func_def_6,type,
    'TypeObject': $int > $int ).

tff(func_def_7,type,
    'System_Int16': $int ).

tff(func_def_8,type,
    anyEqual: ( $int * $int ) > $int ).

tff(func_def_9,type,
    'AsPeerField': $int > $int ).

tff(func_def_10,type,
    'ArrayCategoryInt': $int ).

tff(func_def_11,type,
    'StructGet': ( $int * $int ) > $int ).

tff(func_def_12,type,
    false_1: $int ).

tff(func_def_13,type,
    sharingMode: $int ).

tff(func_def_14,type,
    'InRange': ( $int * $int ) > $int ).

tff(func_def_15,type,
    'ArrayIndexInvY': $int > $int ).

tff(func_def_16,type,
    'IntArray': ( $int * $int ) > $int ).

tff(func_def_17,type,
    'AsOwner': ( $int * $int ) > $int ).

tff(func_def_18,type,
    'ValueArraySet': ( $int * $int * $int ) > $int ).

tff(func_def_19,type,
    'System_IConvertible': $int ).

tff(func_def_20,type,
    'System_Int64': $int ).

tff(func_def_21,type,
    'System_Int32': $int ).

tff(func_def_22,type,
    'Heap': $int ).

tff(func_def_23,type,
    'DeclType': $int > $int ).

tff(func_def_24,type,
    'LBound': ( $int * $int ) > $int ).

tff(func_def_25,type,
    'AsPureObject': $int > $int ).

tff(func_def_26,type,
    boolNot: $int > $int ).

tff(func_def_27,type,
    intAtLeast: ( $int * $int ) > $int ).

tff(func_def_28,type,
    'RefArraySet': ( $int * $int * $int ) > $int ).

tff(func_def_29,type,
    'Heap_1': $int ).

tff(func_def_30,type,
    store1: ( $int * $int * $int ) > $int ).

tff(func_def_31,type,
    'System_Object': $int ).

tff(func_def_32,type,
    'Unbox': $int > $int ).

tff(func_def_33,type,
    typeof: $int > $int ).

tff(func_def_34,type,
    'Factorial_recursiveFac_System_Int32': ( $int * $int ) > $int ).

tff(func_def_35,type,
    'ArrayCategoryNonNullRef': $int ).

tff(func_def_36,type,
    'IfThenElse': ( $int * $int * $int ) > $int ).

tff(func_def_37,type,
    int_m2147483648: $int ).

tff(func_def_38,type,
    'Heap_0': $int ).

tff(func_def_39,type,
    'TypeName': $int > $int ).

tff(func_def_40,type,
    'System_String_Equals_System_String_System_String': ( $int * $int * $int ) > $int ).

tff(func_def_41,type,
    'AsDirectSubClass': ( $int * $int ) > $int ).

tff(func_def_42,type,
    'IsStaticField': $int > $int ).

tff(func_def_43,type,
    'System_String_IsInterned_System_String_notnull': ( $int * $int ) > $int ).

tff(func_def_44,type,
    'System_UInt64': $int ).

tff(func_def_45,type,
    boolImplies: ( $int * $int ) > $int ).

tff(func_def_46,type,
    or_1: ( $int * $int ) > $int ).

tff(func_def_47,type,
    shl: ( $int * $int ) > $int ).

tff(func_def_48,type,
    boolAnd: ( $int * $int ) > $int ).

tff(func_def_49,type,
    'System_Boolean': $int ).

tff(func_def_50,type,
    'As': ( $int * $int ) > $int ).

tff(func_def_51,type,
    'ArrayCategoryRef': $int ).

tff(func_def_52,type,
    'AsNonNullRefField': ( $int * $int ) > $int ).

tff(func_def_53,type,
    x_2: ( $int * $int ) > $int ).

tff(func_def_54,type,
    allocated: $int ).

tff(func_def_55,type,
    'AsRangeField': ( $int * $int ) > $int ).

tff(func_def_56,type,
    and_1: ( $int * $int ) > $int ).

tff(func_def_57,type,
    'SharingMode_LockProtected': $int ).

tff(func_def_58,type,
    'IntArrayGet': ( $int * $int ) > $int ).

tff(func_def_59,type,
    'Is': ( $int * $int ) > $int ).

tff(func_def_60,type,
    'IsAllocated': ( $int * $int ) > $int ).

tff(func_def_61,type,
    int_m9223372036854775808: $int ).

tff(func_def_62,type,
    'ElementProxyStruct': ( $int * $int ) > $int ).

tff(func_def_63,type,
    'ArrayIndex': ( $int * $int * $int * $int ) > $int ).

tff(func_def_64,type,
    select1: ( $int * $int ) > $int ).

tff(func_def_65,type,
    block4284_correct: $int ).

tff(func_def_66,type,
    min: ( $int * $int ) > $int ).

tff(func_def_67,type,
    'AsRefField': ( $int * $int ) > $int ).

tff(func_def_68,type,
    'System_IntPtr': $int ).

tff(func_def_69,type,
    'Length': $int > $int ).

tff(func_def_70,type,
    'AsElementsPeerField': ( $int * $int ) > $int ).

tff(func_def_71,type,
    'ValueArrayGet': ( $int * $int ) > $int ).

tff(func_def_72,type,
    store2: ( $int * $int * $int * $int ) > $int ).

tff(func_def_73,type,
    'FieldDependsOnFCO': ( $int * $int * $int ) > $int ).

tff(func_def_74,type,
    'Rank': $int > $int ).

tff(func_def_75,type,
    'System_IComparable': $int ).

tff(func_def_76,type,
    'ValueArray': ( $int * $int ) > $int ).

tff(func_def_77,type,
    'IntArraySet': ( $int * $int * $int ) > $int ).

tff(func_def_78,type,
    'AsRepField': ( $int * $int ) > $int ).

tff(func_def_79,type,
    intGreater: ( $int * $int ) > $int ).

tff(func_def_80,type,
    'ElementProxy': ( $int * $int ) > $int ).

tff(func_def_81,type,
    'BoxTester': ( $int * $int ) > $int ).

tff(func_def_82,type,
    entry_correct: $int ).

tff(func_def_83,type,
    'ReallyLastGeneratedExit_correct': $int ).

tff(func_def_84,type,
    'SharingMode_Unshared': $int ).

tff(func_def_85,type,
    'System_UInt16': $int ).

tff(func_def_86,type,
    'ClassReprInv': $int > $int ).

tff(func_def_87,type,
    int_4294967295: $int ).

tff(func_def_88,type,
    'ClassRepr': $int > $int ).

tff(func_def_89,type,
    'NonNullFieldsAreInitialized': $int ).

tff(func_def_90,type,
    'AsInterface': $int > $int ).

tff(func_def_91,type,
    stringLiteral0: $int ).

tff(func_def_92,type,
    boolOr: ( $int * $int ) > $int ).

tff(func_def_93,type,
    'PeerGroupPlaceholder': $int ).

tff(func_def_94,type,
    'IsNotNull': ( $int * $int ) > $int ).

tff(func_def_95,type,
    'ArrayCategoryValue': $int ).

tff(func_def_96,type,
    'ElementType': $int > $int ).

tff(func_def_97,type,
    'System_SByte': $int ).

tff(func_def_98,type,
    'BeingConstructed': $int ).

tff(func_def_99,type,
    true_1: $int ).

tff(func_def_100,type,
    int_2147483647: $int ).

tff(func_def_101,type,
    'HeapSucc': ( $int * $int ) > $int ).

tff(func_def_102,type,
    'System_IComparable_1___System_String': $int ).

tff(func_def_103,type,
    'System_String_Equals_System_String': ( $int * $int * $int ) > $int ).

tff(func_def_104,type,
    'OneClassDown': ( $int * $int ) > $int ).

tff(func_def_105,type,
    'StringLength': $int > $int ).

tff(func_def_106,type,
    'AsImmutable': $int > $int ).

tff(func_def_107,type,
    'System_Collections_Generic_IEnumerable_1___System_Char': $int ).

tff(func_def_108,type,
    'IntToInt': ( $int * $int * $int ) > $int ).

tff(func_def_109,type,
    'PurityAxiomsCanBeAssumed': $int ).

tff(func_def_110,type,
    'System_Char': $int ).

tff(func_def_111,type,
    boolIff: ( $int * $int ) > $int ).

tff(func_def_112,type,
    'Factorial_recursiveFac_System_Int32_1': $int > $int ).

tff(func_def_113,type,
    intAtMost: ( $int * $int ) > $int ).

tff(func_def_114,type,
    elements: $int ).

tff(func_def_115,type,
    'IsValueType': $int > $int ).

tff(func_def_116,type,
    'System_UIntPtr': $int ).

tff(func_def_117,type,
    'System_UInt32': $int ).

tff(func_def_118,type,
    'IsImmutable': $int > $int ).

tff(func_def_119,type,
    'AsElementsRepField': ( $int * $int * $int ) > $int ).

tff(func_def_120,type,
    block4301_correct: $int ).

tff(func_def_121,type,
    inv: $int ).

tff(func_def_122,type,
    'FirstConsistentOwner': $int ).

tff(func_def_123,type,
    'NonNullRefArrayRaw': ( $int * $int * $int ) > $int ).

tff(func_def_124,type,
    'BoxFunc': ( $int * $int * $int * $int ) > $int ).

tff(func_def_125,type,
    'AsMutable': $int > $int ).

tff(func_def_126,type,
    x: ( $int * $int ) > $int ).

tff(func_def_127,type,
    'System_Byte': $int ).

tff(func_def_128,type,
    'UnboxedType': $int > $int ).

tff(func_def_129,type,
    'IncludedInModifiesStar': $int > $int ).

tff(func_def_130,type,
    'StructSet': ( $int * $int * $int ) > $int ).

tff(func_def_131,type,
    'System_Type': $int ).

tff(func_def_132,type,
    ownerFrame: $int ).

tff(func_def_133,type,
    'System_IEquatable_1___System_String': $int ).

tff(func_def_134,type,
    max: ( $int * $int ) > $int ).

tff(func_def_135,type,
    shr: ( $int * $int ) > $int ).

tff(func_def_136,type,
    'Factorial': $int ).

tff(func_def_137,type,
    'DimLength': ( $int * $int ) > $int ).

tff(func_def_138,type,
    'RefArrayGet': ( $int * $int ) > $int ).

tff(func_def_139,type,
    x_1: ( $int * $int ) > $int ).

tff(func_def_140,type,
    'UBound': ( $int * $int ) > $int ).

tff(func_def_141,type,
    exposeVersion: $int ).

tff(func_def_142,type,
    'System_ICloneable': $int ).

tff(func_def_143,type,
    int_9223372036854775807: $int ).

tff(func_def_144,type,
    'Box': ( $int * $int ) > $int ).

tff(func_def_145,type,
    'ArrayIndexInvX': $int > $int ).

tff(func_def_146,type,
    anyNeq: ( $int * $int ) > $int ).

tff(func_def_147,type,
    int_18446744073709551615: $int ).

tff(func_def_148,type,
    'IncludeInMainFrameCondition': $int > $int ).

tff(func_def_149,type,
    nullObject: $int ).

tff(func_def_150,type,
    'IsHeap': $int > $int ).

tff(func_def_151,type,
    select2: ( $int * $int * $int ) > $int ).

tff(func_def_152,type,
    'ArrayCategory': $int > $int ).

tff(func_def_153,type,
    this: $int ).

tff(func_def_154,type,
    'RefArray': ( $int * $int ) > $int ).

tff(func_def_155,type,
    'IsMemberlessType': $int > $int ).

tff(func_def_156,type,
    'BaseClass': $int > $int ).

tff(func_def_157,type,
    'NonNullRefArray': ( $int * $int ) > $int ).

tff(func_def_158,type,
    'System_String': $int ).

tff(func_def_173,type,
    sK0: $int ).

tff(func_def_174,type,
    sK1: $int ).

tff(func_def_175,type,
    sK2: ( $int * $int * $int * $int ) > $int ).

tff(func_def_176,type,
    sK3: ( $int * $int * $int * $int ) > $int ).

tff(func_def_177,type,
    sK4: ( $int * $int ) > $int ).

tff(func_def_178,type,
    sK5: ( $int * $int ) > $int ).

tff(func_def_179,type,
    sK6: ( $int * $int * $int ) > $int ).

tff(func_def_180,type,
    sK7: ( $int * $int * $int ) > $int ).

tff(func_def_181,type,
    sK8: ( $int * $int * $int ) > $int ).

tff(func_def_182,type,
    sK9: ( $int * $int * $int ) > $int ).

tff(func_def_183,type,
    sK10: ( $int * $int ) > $int ).

tff(func_def_184,type,
    sK11: ( $int * $int ) > $int ).

tff(func_def_185,type,
    sK12: ( $int * $int ) > $int ).

tff(func_def_186,type,
    sK13: ( $int * $int ) > $int ).

tff(func_def_187,type,
    sK14: $int > $int ).

tff(func_def_188,type,
    sK15: ( $int * $int ) > $int ).

tff(func_def_189,type,
    sK16: ( $int * $int ) > $int ).

tff(func_def_190,type,
    sK17: ( $int * $int * $int * $int ) > $int ).

tff(func_def_191,type,
    sK18: ( $int * $int * $int ) > $int ).

tff(func_def_192,type,
    sK19: ( $int * $int * $int * $int ) > $int ).

tff(func_def_193,type,
    sK20: ( $int * $int * $int ) > $int ).

tff(func_def_194,type,
    sK21: ( $int * $int ) > $int ).

tff(func_def_195,type,
    sK22: ( $int * $int * $int ) > $int ).

tff(func_def_196,type,
    sK23: ( $int * $int * $int * $int * $int ) > $int ).

tff(func_def_197,type,
    sK24: ( $int * $int * $int * $int * $int ) > $int ).

tff(func_def_198,type,
    sK25: ( $int * $int * $int ) > $int ).

tff(func_def_199,type,
    sK26: ( $int * $int * $int ) > $int ).

tff(func_def_200,type,
    sK27: ( $int * $int * $int ) > $int ).

tff(func_def_201,type,
    sK28: ( $int * $int ) > $int ).

tff(func_def_202,type,
    sK29: ( $int * $int ) > $int ).

tff(func_def_203,type,
    sK30: ( $int * $int ) > $int ).

tff(func_def_204,type,
    sK31: ( $int * $int ) > $int ).

tff(func_def_205,type,
    sK32: ( $int * $int ) > $int ).

tff(func_def_206,type,
    sK33: ( $int * $int ) > $int ).

tff(func_def_207,type,
    sK34: ( $int * $int ) > $int ).

tff(func_def_208,type,
    sK35: ( $int * $int ) > $int ).

tff(func_def_209,type,
    sK36: ( $int * $int ) > $int ).

tff(func_def_210,type,
    sK37: ( $int * $int * $int ) > $int ).

tff(func_def_211,type,
    sK38: ( $int * $int ) > $int ).

tff(func_def_212,type,
    sK39: ( $int * $int * $int ) > $int ).

tff(func_def_213,type,
    sK40: ( $int * $int * $int ) > $int ).

tff(func_def_214,type,
    sK41: ( $int * $int * $int ) > $int ).

tff(func_def_215,type,
    sK42: ( $int * $int ) > $int ).

tff(func_def_216,type,
    sK43: $int > $int ).

tff(func_def_217,type,
    sK44: ( $int * $int * $int ) > $int ).

tff(func_def_218,type,
    sK45: ( $int * $int * $int ) > $int ).

tff(func_def_219,type,
    sK46: ( $int * $int ) > $int ).

tff(func_def_220,type,
    sK47: ( $int * $int ) > $int ).

tff(func_def_221,type,
    sK48: ( $int * $int * $int ) > $int ).

tff(func_def_222,type,
    sK49: ( $int * $int ) > $int ).

tff(func_def_223,type,
    sK50: ( $int * $int ) > $int ).

tff(func_def_224,type,
    sK51: ( $int * $int * $int ) > $int ).

tff(func_def_225,type,
    sK52: ( $int * $int * $int ) > $int ).

tff(func_def_226,type,
    sK53: ( $int * $int ) > $int ).

tff(func_def_227,type,
    sK54: $int ).

tff(func_def_228,type,
    sK55: $int ).

tff(func_def_229,type,
    sK56: $int ).

tff(func_def_230,type,
    sK57: $int ).

tff(func_def_231,type,
    sK58: $int ).

tff(func_def_232,type,
    sK59: $int ).

tff(func_def_233,type,
    sK60: $int ).

tff(func_def_234,type,
    sK61: ( $int * $int ) > $int ).

tff(func_def_235,type,
    sK62: ( $int * $int ) > $int ).

tff(func_def_236,type,
    sK63: $int > $int ).

tff(func_def_237,type,
    sK64: $int ).

tff(func_def_238,type,
    sK65: $int > $int ).

tff(func_def_239,type,
    sK66: ( $int * $int ) > $int ).

tff(func_def_240,type,
    sK67: ( $int * $int ) > $int ).

tff(func_def_241,type,
    sK68: $int ).

tff(func_def_242,type,
    sK69: $int ).

tff(func_def_243,type,
    sK70: $int > $int ).

tff(func_def_244,type,
    sK71: $int > $int ).

tff(f2,axiom,
    ? [X1: $int,X0: $int] :
      ( ~ ( ~ ! [X6: $int,X8: $int] :
              ? [X84: $int] :
                ( ( X84 = shl(X6,X8) )
                & ( ~ ( ~ $lesseq(0,X8)
                      | ~ $lesseq(X8,16)
                      | ~ $less(X6,32768)
                      | ~ $lesseq(0,X6) )
                 => ~ ( ~ $lesseq(0,X84)
                      | ~ $lesseq(X84,int_2147483647) ) ) )
          | ~ ! [X9: $int,X14: $int,X3: $int] :
                ( ~ ( ( X9 = nullObject )
                    | ( x(typeof(X9),'IntArray'(X3,X14)) != true_1 ) )
               => ( 'Rank'(X9) = X14 ) )
          | ( x('System_String','System_IEquatable_1___System_String') != true_1 )
          | ( 'AsInterface'('System_IConvertible') != 'System_IConvertible' )
          | ~ ! [X12: $int,X6: $int,X9: $int] :
              ? [X35: $int,X34: $int] :
                ( ( ~ ( ( x(typeof(X9),'System_Array') != true_1 )
                      | ( 'IsHeap'(X12) != true_1 ) )
                 => ( ( 'IsImmutable'(typeof(X35)) = true_1 )
                    | ( X35 = nullObject )
                    | ~ ( ( select2(X12,X35,ownerFrame) != select2(X12,X34,ownerFrame) )
                        | ( select2(X12,X35,ownerRef) != select2(X12,X34,ownerRef) ) ) ) )
                & ( X35 = 'RefArrayGet'(select2(X12,X9,elements),X6) )
                & ( X34 = 'ElementProxy'(X9,$difference(0,1)) ) )
          | ~ ! [X42: $int,X77: $int,X43: $int] :
                ( ( 'InRange'(X77,X43) = true_1 )
               => ( 'IntToInt'(X77,X42,X43) = X77 ) )
          | ~ ! [X3: $int,X14: $int] :
              ? [X18: $int] :
                ( ~ ( ( x(X18,'System_Array') != true_1 )
                    | ( x(X18,X18) != true_1 ) )
                & ( X18 = 'IntArray'(X3,X14) ) )
          | ( 'IsStaticField'(allocated) = true_1 )
          | ( 'IsMemberlessType'('System_IComparable') != true_1 )
          | ( 'IncludedInModifiesStar'(ownerRef) = true_1 )
          | ~ ! [X36: $int,X4: $int,X39: $int] :
                ( ~ ( ( 'IsHeap'(X4) != true_1 )
                    | ( select2(X4,X36,allocated) != true_1 ) )
               => ( 'IsAllocated'(X4,select2(X4,X36,X39)) = true_1 ) )
          | ~ ! [X6: $int] :
                ( ( 'InRange'(X6,'System_Char') = true_1 )
              <=> ~ ( ~ $less(X6,65536)
                    | ~ $lesseq(0,X6) ) )
          | ~ ! [X3: $int] : ( 'ClassRepr'(X3) != nullObject )
          | ~ ! [X3: $int,X25: $int] :
                ( ( x(X25,'AsMutable'(X3)) = true_1 )
               => ~ ( ( 'IsImmutable'(X25) = true_1 )
                    | ( 'AsMutable'(X25) != X25 ) ) )
          | ( 'IsValueType'('System_Int16') != true_1 )
          | ( 'IncludedInModifiesStar'(ownerFrame) = true_1 )
          | ~ ! [X7: $int,X11: $int] : ( x_2(X7,X11) = $difference(X7,$product(x_1(X7,X11),X11)) )
          | ( 'IsImmutable'('System_Object') = true_1 )
          | ~ ! [X3: $int,X5: $int,X14: $int] :
              ? [X32: $int] :
                ( ( X32 = 'ValueArray'(X5,X14) )
                & ( ( x(X32,X3) = true_1 )
                 => ( ( X3 = X32 )
                    | ( x('System_Array',X3) = true_1 ) ) ) )
          | ~ ! [X36: $int,X3: $int] :
                ( ( 'IsNotNull'(X36,X3) = true_1 )
              <=> ~ ( ( 'Is'(X36,X3) != true_1 )
                    | ( X36 = nullObject ) ) )
          | ~ ! [X14: $int,X9: $int,X3: $int] :
                ( ~ ( ( X9 = nullObject )
                    | ( x(typeof(X9),'NonNullRefArray'(X3,X14)) != true_1 ) )
               => ( 'Rank'(X9) = X14 ) )
          | ~ ! [X4: $int,X36: $int] :
              ? [X59: $int,X60: $int,X58: $int] :
                ( ( X60 = select2(X4,X36,ownerRef) )
                & ( ~ ( ( X59 = 'PeerGroupPlaceholder' )
                      | ( select2(X4,X60,localinv) = 'BaseClass'(X59) )
                      | ( 'IsHeap'(X4) != true_1 )
                      | ( x(select2(X4,X60,inv),X59) != true_1 ) )
                 => ~ ( ( select2(X4,X36,inv) != X58 )
                      | ( select2(X4,X36,localinv) != X58 ) ) )
                & ( X59 = select2(X4,X36,ownerFrame) )
                & ( X58 = typeof(X36) ) )
          | ~ ! [X6: $int] : ( shr(X6,0) = X6 )
          | ~ ! [X36: $int,X4: $int] :
              ? [X44: $int] :
                ( ( X44 = typeof(X36) )
                & ( ~ ( ( X36 = nullObject )
                      | ( 'IsHeap'(X4) != true_1 )
                      | ( x(X44,'System_Array') != true_1 ) )
                 => ~ ( ( select2(X4,X36,localinv) != X44 )
                      | ( select2(X4,X36,inv) != X44 ) ) ) )
          | ( 'AsInterface'('System_IComparable_1___System_String') != 'System_IComparable_1___System_String' )
          | ~ ! [X6: $int] :
                ( ~ ( ~ $lesseq(X6,int_18446744073709551615)
                    | ~ $lesseq(0,X6) )
              <=> ( 'InRange'(X6,'System_UInt64') = true_1 ) )
          | ~ $less(int_9223372036854775807,int_18446744073709551615)
          | ~ ! [X7: $int,X11: $int,X10: $int,X9: $int] : ( 'ArrayIndexInvY'('ArrayIndex'(X9,X10,X7,X11)) = X11 )
          | ~ ! [X73: $int,X7: $int] : ( 'Unbox'('Box'(X7,X73)) = X7 )
          | ( 'AsMutable'('Factorial') != 'Factorial' )
          | ( 'IsMemberlessType'('System_ICloneable') != true_1 )
          | ~ ! [X3: $int,X36: $int] :
                ( ( ( x(typeof(X36),X3) = true_1 )
                  | ( X36 = nullObject ) )
              <=> ( 'Is'(X36,X3) = true_1 ) )
          | ( x('System_IComparable','System_IComparable') != true_1 )
          | ~ ! [X12: $int] :
                ( ( 'IsHeap'(X12) = true_1 )
               => ( select2(X12,stringLiteral0,allocated) = true_1 ) )
          | ( 'IncludeInMainFrameCondition'(allocated) != true_1 )
          | ~ $less(int_m2147483648,$difference(0,100000))
          | ( x('System_Collections_IEnumerable','System_Object') != true_1 )
          | ~ ! [X3: $int,X14: $int,X6: $int,X12: $int,X9: $int] :
                ( ~ ( ( x(typeof(X9),'NonNullRefArray'(X3,X14)) != true_1 )
                    | ( 'IsHeap'(X12) != true_1 ) )
               => ( 'RefArrayGet'(select2(X12,X9,elements),X6) != nullObject ) )
          | ~ $less(int_2147483647,int_4294967295)
          | ~ ! [X11: $int,X7: $int,X47: $int] :
                ( ( X47 = true_1 )
               => ( 'IfThenElse'(X47,X7,X11) = X7 ) )
          | ~ ! [X3: $int,X25: $int,X14: $int] :
                ( ( x(X25,X3) = true_1 )
               => ( x('NonNullRefArray'(X25,X14),'NonNullRefArray'(X3,X14)) = true_1 ) )
          | ~ ! [X3: $int,X36: $int] :
                ( ( 'Is'(X36,X3) != true_1 )
               => ( 'As'(X36,X3) = nullObject ) )
          | ( x('System_String','System_String') != true_1 )
          | ( x('System_String','System_Collections_Generic_IEnumerable_1___System_Char') != true_1 )
          | ~ ! [X21: $int,X23: $int,X22: $int] :
              ? [X24: $int] :
                ( ( ( 'NonNullRefArrayRaw'(X21,X22,X23) = true_1 )
                 => ~ ( ( x(X24,'System_Array') != true_1 )
                      | ( 'Rank'(X21) != X23 )
                      | ( x(X22,'ElementType'(X24)) != true_1 ) ) )
                & ( X24 = typeof(X21) ) )
          | ~ ! [X3: $int,X5: $int,X14: $int] :
              ? [X26: $int] :
                ( ( ( x(X3,'RefArray'(X5,X14)) = true_1 )
                 => ~ ( ( x(X26,X5) != true_1 )
                      | ( X3 = X5 )
                      | ( X3 != 'RefArray'(X26,X14) ) ) )
                & ( X26 = 'ElementType'(X3) ) )
          | ~ ! [X6: $int,X9: $int] : ( 'UBound'(X9,X6) = $difference('DimLength'(X9,X6),1) )
          | ~ ! [X11: $int,X7: $int] :
              ? [X83: $int] :
                ( ( X83 = or_1(X7,X11) )
                & ( ~ ( ~ $lesseq(0,X7)
                      | ~ $lesseq(0,X11) )
                 => ~ ( ~ $lesseq(0,X83)
                      | ~ $lesseq(X83,$sum(X7,X11)) ) ) )
          | ( x('System_ICloneable','System_Object') != true_1 )
          | ~ ! [X3: $int,X16: $int,X14: $int] :
                ( ( x(X3,'NonNullRefArray'(X16,X14)) = true_1 )
               => ( 'ArrayCategory'(X3) = 'ArrayCategoryNonNullRef' ) )
          | ~ ! [X73: $int] :
                ( ( 'IsValueType'('UnboxedType'(X73)) = true_1 )
               => ! [X7: $int,X12: $int] :
                  ? [X74: $int] :
                    ( ? [X75: $int] :
                        ( ( X75 = typeof(X74) )
                        & ( ( 'IsHeap'(X12) = true_1 )
                         => ~ ( ( select2(X12,X74,localinv) != X75 )
                              | ( select2(X12,X74,inv) != X75 ) ) ) )
                    & ( X74 = 'Box'(X7,X73) ) ) )
          | ~ ! [X90: $int,X91: $int] : ( 'Factorial_recursiveFac_System_Int32'(X90,X91) = 'Factorial_recursiveFac_System_Int32_1'(X91) )
          | ~ ! [X9: $int,X10: $int,X47: $int] :
                ( ~ ( ~ $less(X9,X47)
                    | ( x_2(X9,X10) != x_2(X47,X10) )
                    | ~ $lesseq(2,X10) )
               => $lesseq($sum(X9,X10),X47) )
          | ~ ! [X3: $int] :
                ( ( 'IsValueType'(X3) = true_1 )
               => ~ ( ~ ! [X25: $int] :
                          ( ( x(X3,X25) = true_1 )
                         => ( X3 = X25 ) )
                    | ~ ! [X25: $int] :
                          ( ( x(X25,X3) = true_1 )
                         => ( X3 = X25 ) ) ) )
          | ( 'IsValueType'('System_UIntPtr') != true_1 )
          | ( 'AsInterface'('System_Collections_IEnumerable') != 'System_Collections_IEnumerable' )
          | ~ ! [X7: $int,X73: $int] :
              ? [X76: $int] :
                ( ( X76 = 'Box'(X7,X73) )
                & ( ~ ( ( x('UnboxedType'(X76),'System_Object') != true_1 )
                      | ( X76 != X73 ) )
                 => ( X7 = X73 ) ) )
          | ~ ! [X9: $int,X2: $int,X47: $int] :
                ( ~ ( ( 'StringEquals'(X9,X47) != true_1 )
                    | ( 'StringEquals'(X47,X2) != true_1 ) )
               => ( 'StringEquals'(X9,X2) = true_1 ) )
          | ~ ! [X5: $int,X14: $int,X3: $int] :
              ? [X28: $int] :
                ( ( X28 = 'ValueArray'(X5,X14) )
                & ( ( x(X3,X28) = true_1 )
                 => ( X3 = X28 ) ) )
          | ( 'IsValueType'('System_UInt16') != true_1 )
          | ( x('System_ICloneable','System_ICloneable') != true_1 )
          | ~ ! [X39: $int,X36: $int,X3: $int,X4: $int] :
                ( ~ ( ( 'IsHeap'(X4) != true_1 )
                    | ~ ( ( $true
                        <=> ( select2(X4,'BeingConstructed','NonNullFieldsAreInitialized') = true_1 ) )
                        | ( X36 != 'BeingConstructed' ) )
                    | ( X36 = nullObject ) )
               => ( select2(X4,X36,'AsNonNullRefField'(X39,X3)) != nullObject ) )
          | ~ ! [X7: $int,X11: $int] :
              ? [X81: $int] :
                ( ( X81 = x_2(X7,X11) )
                & ( ~ ( ~ $lesseq(X7,0)
                      | ~ $less(X11,0) )
                 => ~ ( ~ $lesseq(X81,0)
                      | ~ $less(X11,X81) ) ) )
          | ( 'IsValueType'('System_IntPtr') != true_1 )
          | ~ ! [X16: $int,X3: $int,X14: $int] :
                ( ( x(X3,'IntArray'(X16,X14)) = true_1 )
               => ( 'ArrayCategory'(X3) = 'ArrayCategoryInt' ) )
          | ( x('System_IConvertible','System_IConvertible') != true_1 )
          | ( 'AsInterface'('System_Collections_Generic_IEnumerable_1___System_Char') != 'System_Collections_Generic_IEnumerable_1___System_Char' )
          | ( 'IncludeInMainFrameCondition'(ownerRef) != true_1 )
          | ~ ! [X6: $int] :
                ( ~ ( ~ $lesseq($difference(0,32768),X6)
                    | ~ $less(X6,32768) )
              <=> ( 'InRange'(X6,'System_Int16') = true_1 ) )
          | ~ ! [X36: $int,X4: $int,X39: $int] :
                ( ~ ( ( select2(X4,X36,allocated) != true_1 )
                    | ( 'IsHeap'(X4) != true_1 ) )
               => ( select2(X4,select2(X4,X36,X39),allocated) = true_1 ) )
          | ( 'AsDirectSubClass'('System_String',X0) != 'System_String' )
          | ( 'DeclType'(elements) != 'System_Object' )
          | ( 'IncludeInMainFrameCondition'(localinv) = true_1 )
          | ( 'IsNotNull'(stringLiteral0,'System_String') != true_1 )
          | ~ ! [X69: $int,X71: $int,X68: $int,X70: $int] :
              ? [X72: $int] :
                ( ~ ( ( 'UnboxedType'(X72) != X69 )
                    | ( 'Box'(X68,X72) != X72 ) )
                & ( X72 = 'BoxFunc'(X68,X69,X70,X71) ) )
          | ~ ! [X7: $int,X11: $int] :
              ? [X78: $int] :
                ( ( ~ ( ~ $less(0,X11)
                      | ~ $lesseq(0,X7) )
                 => ~ ( ~ $less(X78,X11)
                      | ~ $lesseq(0,X78) ) )
                & ( X78 = x_2(X7,X11) ) )
          | ~ ! [X89: $int] :
                ( ( x(X89,'System_String') = true_1 )
               => ( X89 = 'System_String' ) )
          | ( X0 != 'System_Object' )
          | ~ ! [X11: $int,X7: $int] :
              ? [X82: $int] :
                ( ( ~ ( ~ $lesseq(0,X11)
                      | ~ $lesseq(0,X82) )
                 => ( x_2(X82,X11) = x_2(X7,X11) ) )
                & ( X82 = $difference(X7,X11) ) )
          | ~ ! [X5: $int,X43: $int,X42: $int] :
                ( ( x(X43,'AsDirectSubClass'(X42,X5)) = true_1 )
               => ( 'OneClassDown'(X43,X5) = X42 ) )
          | ~ ! [X25: $int,X3: $int,X14: $int] :
                ( ( x(X25,X3) = true_1 )
               => ( x('RefArray'(X25,X14),'RefArray'(X3,X14)) = true_1 ) )
          | ~ ! [X9: $int,X3: $int,X14: $int] :
                ( ~ ( ( x(typeof(X9),'RefArray'(X3,X14)) != true_1 )
                    | ( X9 = nullObject ) )
               => ( 'Rank'(X9) = X14 ) )
          | ~ ! [X37: $int,X36: $int] : ( typeof('ElementProxy'(X36,X37)) = 'System_Object' )
          | ( x('System_String','System_IComparable_1___System_String') != true_1 )
          | ~ ! [X6: $int] :
                ( ( 'InRange'(X6,'System_Int64') = true_1 )
              <=> ~ ( ~ $lesseq(X6,int_9223372036854775807)
                    | ~ $lesseq(int_m9223372036854775808,X6) ) )
          | ~ $less(100000,int_2147483647)
          | ~ ! [X9: $int,X11: $int,X7: $int,X10: $int] : ( 'ArrayIndexInvX'('ArrayIndex'(X9,X10,X7,X11)) = X7 )
          | ~ ! [X36: $int,X3: $int] :
                ( ( 'Is'(X36,X3) = true_1 )
               => ( 'As'(X36,X3) = X36 ) )
          | ~ ! [X11: $int,X7: $int] :
              ? [X79: $int] :
                ( ( ~ ( ~ $less(X11,0)
                      | ~ $lesseq(0,X7) )
                 => ~ ( ~ $less(X79,$difference(0,X11))
                      | ~ $lesseq(0,X79) ) )
                & ( X79 = x_2(X7,X11) ) )
          | ~ ! [X9: $int,X3: $int,X14: $int] :
                ( ~ ( ( X9 = nullObject )
                    | ( x(typeof(X9),'ValueArray'(X3,X14)) != true_1 ) )
               => ( 'Rank'(X9) = X14 ) )
          | ( 'IsValueType'('System_Boolean') != true_1 )
          | ( 'IsStaticField'(exposeVersion) = true_1 )
          | ~ ! [X8: $int,X6: $int] :
                ( $lesseq(1,X8)
               => ( shl(X6,X8) = $product(shl(X6,$difference(X8,1)),2) ) )
          | ( x('System_IEquatable_1___System_String','System_Object') != true_1 )
          | ~ ! [X2: $int,X4: $int] :
                ( ( 'IsHeap'(X4) = true_1 )
               => ( select2(X4,'ClassRepr'(X2),allocated) = true_1 ) )
          | ~ ! [X3: $int] : ( 'IsNotNull'('TypeObject'(X3),'System_Type') = true_1 )
          | ~ ! [X3: $int] : ( x(typeof('ClassRepr'(X3)),'System_Object') != true_1 )
          | ~ ! [X16: $int,X14: $int,X3: $int] :
                ( ( x(X3,'ValueArray'(X16,X14)) = true_1 )
               => ( 'ArrayCategory'(X3) = 'ArrayCategoryValue' ) )
          | ~ ! [X3: $int,X5: $int,X14: $int] :
              ? [X27: $int] :
                ( ( X27 = 'ElementType'(X3) )
                & ( ( x(X3,'NonNullRefArray'(X5,X14)) = true_1 )
                 => ~ ( ( X3 != 'NonNullRefArray'(X27,X14) )
                      | ( x(X27,X5) != true_1 )
                      | ( X3 = X5 ) ) ) )
          | ( x('System_IEquatable_1___System_String','System_IEquatable_1___System_String') != true_1 )
          | ~ ! [X9: $int,X6: $int] : $lesseq(0,'DimLength'(X9,X6))
          | ~ ! [X7: $int,X11: $int] :
              ? [X80: $int] :
                ( ( ~ ( ~ $lesseq(X7,0)
                      | ~ $less(0,X11) )
                 => ~ ( ~ $lesseq(X80,0)
                      | ~ $less($difference(0,X11),X80) ) )
                & ( X80 = x_2(X7,X11) ) )
          | ( x('System_Collections_Generic_IEnumerable_1___System_Char','System_Collections_Generic_IEnumerable_1___System_Char') != true_1 )
          | ( 'IncludedInModifiesStar'(elements) != true_1 )
          | ~ ! [X6: $int] :
                ( ( 'InRange'(X6,'System_Byte') = true_1 )
              <=> ~ ( ~ $less(X6,256)
                    | ~ $lesseq(0,X6) ) )
          | ~ ! [X7: $int,X11: $int] :
                ( ~ ( ~ $lesseq(0,X11)
                    | ~ $lesseq(0,X7) )
               => ( x_2($sum(X11,X7),X11) = x_2(X7,X11) ) )
          | ( 'IncludeInMainFrameCondition'('FirstConsistentOwner') = true_1 )
          | ( 'IsValueType'('System_Char') != true_1 )
          | ( 'IsMemberlessType'('System_IEquatable_1___System_String') != true_1 )
          | ~ ! [X7: $int,X8: $int,X6: $int,X5: $int] :
                ( ( X6 != X8 )
               => ( 'IntArrayGet'('IntArraySet'(X5,X6,X7),X8) = 'IntArrayGet'(X5,X8) ) )
          | ( x('System_String','System_IConvertible') != true_1 )
          | ( 'IsValueType'('System_Int64') != true_1 )
          | ( 'IsStaticField'(localinv) = true_1 )
          | ~ ! [X4: $int,X38: $int,X39: $int] :
                ( ( 'IsAllocated'(X4,X38) = true_1 )
               => ( 'IsAllocated'(X4,'StructGet'(X38,X39)) = true_1 ) )
          | ~ ! [X9: $int,X12: $int] :
                ( ~ ( ( x(typeof(X9),'System_Array') != true_1 )
                    | ( 'IsHeap'(X12) != true_1 )
                    | ( 'IsAllocated'(X12,X9) != true_1 ) )
               => ( 'IsAllocated'(X12,'ElementProxy'(X9,$difference(0,1))) = true_1 ) )
          | ~ ! [X5: $int,X14: $int] : ( 'ElementType'('RefArray'(X5,X14)) = X5 )
          | ~ ! [X37: $int,X36: $int] : ( typeof('ElementProxyStruct'(X36,X37)) = 'System_Object' )
          | ( x('System_String','System_IComparable') != true_1 )
          | ~ ! [X9: $int] :
              ? [X15: $int] :
                ( ( X15 = 'Length'(X9) )
                & ~ ( ~ $lesseq(0,X15)
                    | ~ $lesseq(X15,int_2147483647) ) )
          | ( 'IsValueType'('System_UInt32') != true_1 )
          | ( 'IsMemberlessType'('System_IComparable_1___System_String') != true_1 )
          | ~ ! [X14: $int,X3: $int] :
              ? [X17: $int] :
                ( ~ ( ( x(X17,X17) != true_1 )
                    | ( x(X17,'System_Array') != true_1 ) )
                & ( X17 = 'ValueArray'(X3,X14) ) )
          | ~ ! [X4: $int,X39: $int,X36: $int,X6: $int] :
              ? [X56: $int] :
                ( ? [X57: $int] :
                    ( ( X57 = 'ElementProxy'(X56,X6) )
                    & ( ~ ( ( 'IsHeap'(X4) != true_1 )
                          | ( X56 = nullObject ) )
                     => ~ ( ( select2(X4,X57,ownerFrame) != select2(X4,X36,ownerFrame) )
                          | ( select2(X4,X57,ownerRef) != select2(X4,X36,ownerRef) ) ) ) )
                & ( X56 = select2(X4,X36,'AsElementsPeerField'(X39,X6)) ) )
          | ( 'AsInterface'('System_IComparable') != 'System_IComparable' )
          | ( $sum(int_m9223372036854775808,1) != $difference(0,int_9223372036854775807) )
          | ~ ! [X6: $int] : ( shl(X6,0) = X6 )
          | ( X1 != 'System_Object' )
          | ~ ! [X7: $int,X11: $int] :
                ( ~ ( ~ $lesseq(0,X7)
                    | ~ $lesseq(0,X11) )
               => ( x_2($sum(X7,X11),X11) = x_2(X7,X11) ) )
          | ~ ! [X3: $int] : ( 'TypeName'('TypeObject'(X3)) = X3 )
          | ( 'IncludedInModifiesStar'(exposeVersion) != true_1 )
          | ~ ! [X6: $int,X4: $int,X3: $int,X39: $int,X36: $int] :
              ? [X54: $int] :
                ( ? [X55: $int] :
                    ( ( ~ ( ( X54 = nullObject )
                          | ( 'IsHeap'(X4) != true_1 ) )
                     => ~ ( ( select2(X4,X55,ownerFrame) != X3 )
                          | ( select2(X4,X55,ownerRef) != X36 ) ) )
                    & ( X55 = 'ElementProxy'(X54,X6) ) )
                & ( X54 = select2(X4,X36,'AsElementsRepField'(X39,X3,X6)) ) )
          | ( 'AsImmutable'('System_String') != 'System_String' )
          | ( 'IsMemberlessType'('System_Collections_IEnumerable') != true_1 )
          | ~ ! [X9: $int,X6: $int] : ( 'LBound'(X9,X6) = 0 )
          | ~ ! [X9: $int] : $lesseq(1,'Rank'(X9))
          | ( 'IncludeInMainFrameCondition'(exposeVersion) != true_1 )
          | ~ ! [X14: $int,X5: $int,X3: $int] :
              ? [X31: $int] :
                ( ( X31 = 'ElementType'(X3) )
                & ( ( x('NonNullRefArray'(X5,X14),X3) = true_1 )
                 => ( ( x('System_Array',X3) = true_1 )
                    | ~ ( ( X3 != 'NonNullRefArray'(X31,X14) )
                        | ( x(X5,X31) != true_1 ) ) ) ) )
          | ~ ! [X9: $int] :
                ( ( 'Rank'(X9) = 1 )
               => ( 'DimLength'(X9,0) = 'Length'(X9) ) )
          | ( 'IsValueType'('System_UInt64') != true_1 )
          | ~ ! [X14: $int,X5: $int,X3: $int] :
              ? [X29: $int] :
                ( ( ( x(X3,X29) = true_1 )
                 => ( X3 = X29 ) )
                & ( X29 = 'IntArray'(X5,X14) ) )
          | ( 'IncludeInMainFrameCondition'(inv) = true_1 )
          | ~ ! [X4: $int,X36: $int] :
              ? [X63: $int] :
                ( ( X63 = select2(X4,X36,'FirstConsistentOwner') )
                & ? [X64: $int,X65: $int,X67: $int,X66: $int] :
                    ( ( X66 = select2(X4,X36,ownerFrame) )
                    & ( X65 = select2(X4,X63,ownerRef) )
                    & ( X67 = select2(X4,X36,ownerRef) )
                    & ( X64 = select2(X4,X63,ownerFrame) )
                    & ( ~ ( ( select2(X4,X67,localinv) = 'BaseClass'(X66) )
                          | ( 'IsHeap'(X4) != true_1 )
                          | ( x(select2(X4,X67,inv),X66) != true_1 )
                          | ~ ( ( select2(X4,X36,allocated) = true_1 )
                            <=> $true )
                          | ( X36 = nullObject )
                          | ( X66 = 'PeerGroupPlaceholder' ) )
                     => ~ ( ~ ( ( select2(X4,X65,localinv) = 'BaseClass'(X64) )
                              | ( X64 = 'PeerGroupPlaceholder' )
                              | ( x(select2(X4,X65,inv),X64) != true_1 ) )
                          | ~ ( ( select2(X4,X63,allocated) = true_1 )
                            <=> $true )
                          | ( X63 = nullObject ) ) ) ) )
          | ( 'IsValueType'('System_Int32') != true_1 )
          | ~ ! [X36: $int,X39: $int,X3: $int,X4: $int] :
              ? [X52: $int] :
                ( ( ~ ( ( 'IsHeap'(X4) != true_1 )
                      | ( X52 = nullObject ) )
                 => ~ ( ( select2(X4,X52,ownerFrame) != X3 )
                      | ( select2(X4,X52,ownerRef) != X36 ) ) )
                & ( X52 = select2(X4,X36,'AsRepField'(X39,X3)) ) )
          | ~ ! [X25: $int,X3: $int] :
                ( ( x(X25,'AsImmutable'(X3)) = true_1 )
               => ~ ( ( 'AsImmutable'(X25) != X25 )
                    | ( 'IsImmutable'(X25) != true_1 ) ) )
          | ~ ! [X4: $int,X36: $int,X3: $int,X39: $int] :
                ( ( 'IsHeap'(X4) = true_1 )
               => ( 'Is'(select2(X4,X36,'AsRefField'(X39,X3)),X3) = true_1 ) )
          | ( x('System_Array','System_Object') != true_1 )
          | ~ ! [X47: $int,X4: $int,X9: $int] :
                ( ~ ( ( X9 = nullObject )
                    | ( X47 = nullObject )
                    | ( 'System_String_Equals_System_String_System_String'(X4,X9,X47) != true_1 ) )
               => ( 'System_String_IsInterned_System_String_notnull'(X4,X9) = 'System_String_IsInterned_System_String_notnull'(X4,X47) ) )
          | ~ ! [X3: $int,X39: $int] :
                ( ( 'AsNonNullRefField'(X39,X3) = X39 )
               => ( 'AsRefField'(X39,X3) = X39 ) )
          | ( 'DeclType'(exposeVersion) != 'System_Object' )
          | ~ ! [X7: $int,X5: $int,X6: $int] : ( 'IntArrayGet'('IntArraySet'(X5,X6,X7),X6) = X7 )
          | ( 'IsValueType'('System_SByte') != true_1 )
          | ~ ! [X5: $int,X6: $int,X7: $int] : ( 'RefArrayGet'('RefArraySet'(X5,X6,X7),X6) = X7 )
          | ( x('System_IComparable_1___System_String','System_Object') != true_1 )
          | ~ ! [X16: $int,X3: $int,X14: $int] :
                ( ( x(X3,'RefArray'(X16,X14)) = true_1 )
               => ( 'ArrayCategory'(X3) = 'ArrayCategoryRef' ) )
          | ~ ! [X39: $int,X38: $int,X40: $int,X7: $int] :
                ( ( X39 != X40 )
               => ( 'StructGet'('StructSet'(X38,X39,X7),X40) = 'StructGet'(X38,X40) ) )
          | ~ ! [X3: $int,X5: $int,X14: $int] :
              ? [X30: $int] :
                ( ( X30 = 'ElementType'(X3) )
                & ( ( x('RefArray'(X5,X14),X3) = true_1 )
                 => ( ~ ( ( X3 != 'RefArray'(X30,X14) )
                        | ( x(X5,X30) != true_1 ) )
                    | ( x('System_Array',X3) = true_1 ) ) ) )
          | ~ ! [X6: $int] :
                ( ~ ( ~ $lesseq(0,X6)
                    | ~ $less(X6,65536) )
              <=> ( 'InRange'(X6,'System_UInt16') = true_1 ) )
          | ~ ! [X2: $int] : ( 'ClassReprInv'('ClassRepr'(X2)) = X2 )
          | ~ ! [X88: $int,X87: $int] :
                ( ~ ( ( x(select2(X88,X87,inv),'Factorial') != true_1 )
                    | ( 'IsHeap'(X88) != true_1 )
                    | ( select2(X88,X87,localinv) = X1 ) )
               => $true )
          | ( 'IncludeInMainFrameCondition'(elements) != true_1 )
          | ( x('System_IComparable','System_Object') != true_1 )
          | ~ ! [X36: $int,X3: $int] :
                ( ~ ( ( X36 = nullObject )
                    | ( x(typeof(X36),'AsImmutable'(X3)) != true_1 )
                    | ( X36 = 'BeingConstructed' ) )
               => ! [X4: $int] :
                  ? [X50: $int] :
                    ( ( X50 = typeof(X36) )
                    & ( ( 'IsHeap'(X4) = true_1 )
                     => ~ ( ( select2(X4,X36,localinv) != X50 )
                          | ( 'AsOwner'(X36,select2(X4,X36,ownerRef)) != X36 )
                          | ( select2(X4,X36,ownerFrame) != 'PeerGroupPlaceholder' )
                          | ( select2(X4,X36,inv) != X50 )
                          | ~ ! [X51: $int] :
                                ( ( 'AsOwner'(X36,select2(X4,X51,ownerRef)) = X36 )
                               => ( ( select2(X4,X51,ownerFrame) != 'PeerGroupPlaceholder' )
                                  | ( X51 = X36 ) ) ) ) ) ) )
          | ~ ( ( 'ArrayCategoryValue' != 'System_Int32' )
              & ( allocated != 'FirstConsistentOwner' )
              & ( 'ArrayCategoryValue' != 'System_IComparable_1___System_String' )
              & ( 'System_Int16' != 'System_UInt32' )
              & ( 'System_SByte' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( elements != 'System_Char' )
              & ( elements != 'System_IntPtr' )
              & ( 'System_Array' != 'System_Char' )
              & ( localinv != 'FirstConsistentOwner' )
              & ( 'ArrayCategoryValue' != 'System_UInt32' )
              & ( sharingMode != 'System_Collections_IEnumerable' )
              & ( 'System_Array' != 'System_Int64' )
              & ( exposeVersion != 'System_Byte' )
              & ( 'System_IConvertible' != 'System_IEquatable_1___System_String' )
              & ( 'NonNullFieldsAreInitialized' != 'System_IntPtr' )
              & ( exposeVersion != 'System_Int16' )
              & ( inv != 'System_SByte' )
              & ( ownerRef != 'Factorial' )
              & ( ownerRef != 'System_UInt16' )
              & ( allocated != stringLiteral0 )
              & ( 'System_UInt32' != 'System_IConvertible' )
              & ( 'SharingMode_LockProtected' != 'FirstConsistentOwner' )
              & ( localinv != 'ArrayCategoryRef' )
              & ( 'System_SByte' != 'System_IComparable' )
              & ( 'SharingMode_Unshared' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'ArrayCategoryValue' != 'System_Int64' )
              & ( ownerRef != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryValue' != 'System_Int16' )
              & ( 'System_Boolean' != 'System_Int32' )
              & ( 'FirstConsistentOwner' != 'System_ICloneable' )
              & ( localinv != 'ArrayCategoryInt' )
              & ( exposeVersion != 'System_Boolean' )
              & ( 'System_Object' != 'System_Byte' )
              & ( 'System_Type' != 'System_IComparable_1___System_String' )
              & ( 'System_IntPtr' != 'System_IComparable' )
              & ( 'SharingMode_Unshared' != 'System_Int16' )
              & ( 'SharingMode_Unshared' != 'System_Object' )
              & ( 'SharingMode_LockProtected' != 'System_String' )
              & ( elements != 'System_Object' )
              & ( 'System_IComparable_1___System_String' != 'Factorial' )
              & ( inv != 'Factorial' )
              & ( 'System_UInt16' != 'System_Int64' )
              & ( ownerFrame != 'System_IntPtr' )
              & ( inv != 'System_Int64' )
              & ( 'ArrayCategoryInt' != 'System_UInt16' )
              & ( sharingMode != 'System_Int64' )
              & ( 'NonNullFieldsAreInitialized' != 'System_Int32' )
              & ( allocated != 'System_Int64' )
              & ( 'System_IntPtr' != 'System_ICloneable' )
              & ( inv != 'NonNullFieldsAreInitialized' )
              & ( allocated != 'System_Array' )
              & ( 'System_Char' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( sharingMode != 'System_IComparable' )
              & ( 'System_Type' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( sharingMode != 'SharingMode_LockProtected' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Char' )
              & ( 'System_Type' != 'System_Int64' )
              & ( 'System_Boolean' != 'System_Type' )
              & ( 'ArrayCategoryInt' != stringLiteral0 )
              & ( 'ArrayCategoryNonNullRef' != 'System_UInt16' )
              & ( 'System_UInt16' != 'System_IEquatable_1___System_String' )
              & ( 'FirstConsistentOwner' != stringLiteral0 )
              & ( 'SharingMode_Unshared' != 'System_SByte' )
              & ( elements != 'System_UInt32' )
              & ( ownerFrame != stringLiteral0 )
              & ( 'PeerGroupPlaceholder' != 'System_Array' )
              & ( localinv != 'PeerGroupPlaceholder' )
              & ( 'System_Object' != 'System_IComparable' )
              & ( 'ArrayCategoryRef' != 'System_Byte' )
              & ( 'SharingMode_Unshared' != 'System_String' )
              & ( exposeVersion != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Boolean' != 'System_IEquatable_1___System_String' )
              & ( 'System_Int16' != 'System_IComparable' )
              & ( 'System_Int16' != 'System_IntPtr' )
              & ( elements != 'System_Int32' )
              & ( 'System_String' != 'System_UInt16' )
              & ( allocated != 'System_Object' )
              & ( 'System_Boolean' != stringLiteral0 )
              & ( 'ArrayCategoryNonNullRef' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_SByte' != 'System_Collections_IEnumerable' )
              & ( 'SharingMode_LockProtected' != 'System_Object' )
              & ( localinv != 'System_UInt32' )
              & ( 'ArrayCategoryRef' != 'System_UIntPtr' )
              & ( 'SharingMode_Unshared' != 'System_Byte' )
              & ( 'NonNullFieldsAreInitialized' != 'System_IComparable' )
              & ( 'NonNullFieldsAreInitialized' != 'System_UInt64' )
              & ( 'System_Int32' != 'System_IComparable' )
              & ( 'System_Boolean' != 'System_Byte' )
              & ( sharingMode != 'System_IConvertible' )
              & ( 'SharingMode_Unshared' != ownerFrame )
              & ( exposeVersion != 'System_ICloneable' )
              & ( 'ArrayCategoryRef' != 'System_Char' )
              & ( 'System_IComparable' != 'Factorial' )
              & ( allocated != ownerFrame )
              & ( ownerFrame != 'System_Type' )
              & ( 'System_Type' != 'System_Char' )
              & ( 'System_Boolean' != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryInt' != 'System_SByte' )
              & ( 'NonNullFieldsAreInitialized' != 'System_IConvertible' )
              & ( 'ArrayCategoryInt' != 'System_Byte' )
              & ( 'ArrayCategoryValue' != 'System_UInt16' )
              & ( elements != 'ArrayCategoryInt' )
              & ( 'NonNullFieldsAreInitialized' != 'System_Char' )
              & ( 'System_Byte' != 'System_ICloneable' )
              & ( localinv != 'ArrayCategoryNonNullRef' )
              & ( 'ArrayCategoryRef' != 'NonNullFieldsAreInitialized' )
              & ( 'System_UInt16' != stringLiteral0 )
              & ( ownerRef != 'System_Char' )
              & ( 'System_SByte' != 'System_Int64' )
              & ( allocated != 'System_SByte' )
              & ( 'System_Byte' != 'System_IComparable' )
              & ( elements != 'NonNullFieldsAreInitialized' )
              & ( ownerRef != 'System_SByte' )
              & ( 'SharingMode_LockProtected' != 'System_ICloneable' )
              & ( sharingMode != 'System_UInt64' )
              & ( 'System_Boolean' != 'System_IConvertible' )
              & ( 'System_Boolean' != 'System_UInt64' )
              & ( 'System_Array' != 'System_Int32' )
              & ( allocated != 'SharingMode_LockProtected' )
              & ( 'PeerGroupPlaceholder' != 'System_Int16' )
              & ( 'System_Int64' != 'Factorial' )
              & ( 'ArrayCategoryRef' != 'System_Int16' )
              & ( exposeVersion != 'System_SByte' )
              & ( 'System_String' != 'System_IComparable' )
              & ( 'NonNullFieldsAreInitialized' != 'FirstConsistentOwner' )
              & ( ownerFrame != 'ArrayCategoryRef' )
              & ( inv != 'PeerGroupPlaceholder' )
              & ( sharingMode != 'System_SByte' )
              & ( sharingMode != 'System_Char' )
              & ( 'ArrayCategoryValue' != 'System_IEquatable_1___System_String' )
              & ( sharingMode != 'ArrayCategoryInt' )
              & ( 'System_Int32' != 'System_IComparable_1___System_String' )
              & ( 'System_Type' != stringLiteral0 )
              & ( 'PeerGroupPlaceholder' != 'System_UInt64' )
              & ( 'ArrayCategoryValue' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Boolean' != 'System_Int16' )
              & ( localinv != 'Factorial' )
              & ( 'System_Collections_IEnumerable' != stringLiteral0 )
              & ( 'ArrayCategoryInt' != 'ArrayCategoryNonNullRef' )
              & ( elements != exposeVersion )
              & ( 'ArrayCategoryValue' != 'Factorial' )
              & ( inv != 'System_UInt16' )
              & ( 'System_Int32' != 'System_Int64' )
              & ( 'System_Int64' != stringLiteral0 )
              & ( 'SharingMode_LockProtected' != 'System_Collections_IEnumerable' )
              & ( 'System_Int16' != 'System_Int64' )
              & ( elements != 'SharingMode_Unshared' )
              & ( 'PeerGroupPlaceholder' != 'System_Int32' )
              & ( inv != 'System_Type' )
              & ( ownerRef != 'System_UInt64' )
              & ( 'ArrayCategoryInt' != 'NonNullFieldsAreInitialized' )
              & ( exposeVersion != 'ArrayCategoryNonNullRef' )
              & ( localinv != ownerFrame )
              & ( 'SharingMode_Unshared' != 'System_IConvertible' )
              & ( sharingMode != 'System_Array' )
              & ( 'System_Int16' != 'System_Collections_IEnumerable' )
              & ( 'SharingMode_LockProtected' != 'System_IComparable_1___System_String' )
              & ( 'PeerGroupPlaceholder' != 'System_Collections_IEnumerable' )
              & ( localinv != 'SharingMode_Unshared' )
              & ( 'System_Object' != 'System_IConvertible' )
              & ( localinv != 'System_String' )
              & ( ownerRef != 'System_UInt32' )
              & ( exposeVersion != stringLiteral0 )
              & ( 'System_Int16' != 'Factorial' )
              & ( 'System_Byte' != 'System_UIntPtr' )
              & ( 'NonNullFieldsAreInitialized' != 'System_SByte' )
              & ( 'System_Char' != 'Factorial' )
              & ( allocated != 'PeerGroupPlaceholder' )
              & ( 'ArrayCategoryRef' != 'System_IComparable_1___System_String' )
              & ( 'System_IComparable_1___System_String' != 'System_IComparable' )
              & ( inv != 'System_UInt64' )
              & ( 'SharingMode_LockProtected' != 'System_IEquatable_1___System_String' )
              & ( 'ArrayCategoryValue' != 'System_Collections_IEnumerable' )
              & ( 'System_UInt32' != 'System_IntPtr' )
              & ( elements != 'System_IComparable_1___System_String' )
              & ( allocated != 'System_UInt64' )
              & ( 'System_Char' != 'System_IComparable_1___System_String' )
              & ( inv != 'System_Array' )
              & ( 'System_Array' != 'System_Int16' )
              & ( sharingMode != 'System_Int32' )
              & ( 'System_UIntPtr' != 'System_IConvertible' )
              & ( 'System_Boolean' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Char' != stringLiteral0 )
              & ( elements != 'System_IEquatable_1___System_String' )
              & ( 'System_Byte' != 'System_UInt32' )
              & ( localinv != 'System_Array' )
              & ( localinv != sharingMode )
              & ( 'FirstConsistentOwner' != 'System_IntPtr' )
              & ( 'SharingMode_Unshared' != 'System_UInt32' )
              & ( 'System_Int64' != 'System_UIntPtr' )
              & ( inv != 'ArrayCategoryInt' )
              & ( exposeVersion != 'System_Array' )
              & ( 'ArrayCategoryNonNullRef' != 'System_IComparable' )
              & ( 'System_Int64' != 'System_IntPtr' )
              & ( allocated != 'System_ICloneable' )
              & ( ownerRef != 'ArrayCategoryRef' )
              & ( 'System_Int16' != 'System_IEquatable_1___System_String' )
              & ( localinv != 'System_UIntPtr' )
              & ( 'ArrayCategoryValue' != 'FirstConsistentOwner' )
              & ( 'ArrayCategoryValue' != 'System_SByte' )
              & ( sharingMode != 'System_IComparable_1___System_String' )
              & ( 'System_Int32' != 'System_ICloneable' )
              & ( 'SharingMode_Unshared' != 'System_IComparable_1___System_String' )
              & ( 'SharingMode_LockProtected' != 'ArrayCategoryNonNullRef' )
              & ( 'System_UInt16' != 'System_ICloneable' )
              & ( 'PeerGroupPlaceholder' != 'FirstConsistentOwner' )
              & ( 'System_IComparable_1___System_String' != 'System_Collections_IEnumerable' )
              & ( 'System_Char' != 'System_IConvertible' )
              & ( ownerFrame != 'Factorial' )
              & ( exposeVersion != 'SharingMode_LockProtected' )
              & ( 'SharingMode_Unshared' != 'System_Collections_IEnumerable' )
              & ( 'SharingMode_LockProtected' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_UIntPtr' != stringLiteral0 )
              & ( 'FirstConsistentOwner' != 'System_Collections_IEnumerable' )
              & ( sharingMode != ownerRef )
              & ( 'PeerGroupPlaceholder' != 'NonNullFieldsAreInitialized' )
              & ( 'System_UInt16' != 'System_UIntPtr' )
              & ( localinv != 'System_UInt16' )
              & ( 'SharingMode_Unshared' != 'ArrayCategoryNonNullRef' )
              & ( 'System_IConvertible' != 'System_IComparable' )
              & ( exposeVersion != 'FirstConsistentOwner' )
              & ( 'ArrayCategoryRef' != 'FirstConsistentOwner' )
              & ( 'System_UIntPtr' != 'System_IntPtr' )
              & ( ownerFrame != 'System_String' )
              & ( 'System_UIntPtr' != 'System_IComparable_1___System_String' )
              & ( 'ArrayCategoryValue' != 'System_Char' )
              & ( localinv != 'System_IComparable' )
              & ( allocated != 'System_UIntPtr' )
              & ( 'System_Int32' != 'System_Collections_IEnumerable' )
              & ( 'System_SByte' != 'System_UIntPtr' )
              & ( ownerFrame != 'System_Char' )
              & ( allocated != 'ArrayCategoryRef' )
              & ( ownerFrame != 'System_UIntPtr' )
              & ( 'System_Int64' != 'System_IComparable' )
              & ( allocated != 'System_IComparable_1___System_String' )
              & ( 'Factorial' != 'System_Collections_IEnumerable' )
              & ( allocated != 'System_Type' )
              & ( 'System_ICloneable' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Object' != 'System_UInt64' )
              & ( localinv != 'ArrayCategoryValue' )
              & ( 'System_UInt32' != 'System_Char' )
              & ( 'System_Boolean' != 'System_UInt32' )
              & ( ownerFrame != 'System_ICloneable' )
              & ( 'System_UInt64' != 'System_IEquatable_1___System_String' )
              & ( sharingMode != 'FirstConsistentOwner' )
              & ( ownerFrame != 'System_Int64' )
              & ( allocated != 'System_UInt16' )
              & ( 'System_Int16' != 'System_UInt16' )
              & ( allocated != 'System_IEquatable_1___System_String' )
              & ( 'System_Object' != 'System_IEquatable_1___System_String' )
              & ( 'ArrayCategoryInt' != 'System_UInt64' )
              & ( ownerRef != 'System_IConvertible' )
              & ( allocated != 'System_IConvertible' )
              & ( inv != 'SharingMode_LockProtected' )
              & ( 'FirstConsistentOwner' != 'System_UIntPtr' )
              & ( 'System_UInt16' != 'System_Collections_IEnumerable' )
              & ( 'System_Int32' != 'System_UInt32' )
              & ( 'System_UInt16' != 'System_IComparable_1___System_String' )
              & ( 'PeerGroupPlaceholder' != 'Factorial' )
              & ( elements != 'System_IConvertible' )
              & ( allocated != 'SharingMode_Unshared' )
              & ( 'System_Type' != 'System_String' )
              & ( inv != 'ArrayCategoryRef' )
              & ( 'ArrayCategoryNonNullRef' != 'System_IEquatable_1___System_String' )
              & ( elements != 'FirstConsistentOwner' )
              & ( 'System_UInt16' != 'System_Char' )
              & ( 'SharingMode_LockProtected' != 'System_Byte' )
              & ( 'System_Object' != 'System_String' )
              & ( elements != 'System_Byte' )
              & ( exposeVersion != 'System_IComparable_1___System_String' )
              & ( 'System_String' != 'System_IEquatable_1___System_String' )
              & ( 'System_Boolean' != 'System_IComparable_1___System_String' )
              & ( 'System_Array' != 'System_UInt32' )
              & ( 'System_Object' != 'System_UInt16' )
              & ( ownerRef != 'System_Int16' )
              & ( 'System_String' != 'FirstConsistentOwner' )
              & ( 'System_Array' != 'System_IComparable_1___System_String' )
              & ( 'ArrayCategoryValue' != stringLiteral0 )
              & ( 'ArrayCategoryValue' != 'NonNullFieldsAreInitialized' )
              & ( exposeVersion != 'System_UIntPtr' )
              & ( 'System_Int32' != 'System_Char' )
              & ( localinv != 'NonNullFieldsAreInitialized' )
              & ( 'NonNullFieldsAreInitialized' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_IComparable' != stringLiteral0 )
              & ( inv != 'ArrayCategoryValue' )
              & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_Collections_IEnumerable' )
              & ( 'System_Object' != 'FirstConsistentOwner' )
              & ( 'ArrayCategoryRef' != 'System_Type' )
              & ( 'System_Int32' != 'System_UInt64' )
              & ( ownerFrame != 'System_Int16' )
              & ( 'System_Type' != 'System_UInt32' )
              & ( 'System_Byte' != 'System_IComparable_1___System_String' )
              & ( 'System_String' != 'System_Int64' )
              & ( 'System_String' != 'System_IntPtr' )
              & ( 'System_Type' != 'System_UInt64' )
              & ( exposeVersion != 'SharingMode_Unshared' )
              & ( 'ArrayCategoryInt' != 'System_UIntPtr' )
              & ( ownerRef != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'ArrayCategoryInt' != 'System_Int16' )
              & ( elements != localinv )
              & ( 'ArrayCategoryNonNullRef' != 'System_ICloneable' )
              & ( 'System_UInt64' != 'System_IComparable_1___System_String' )
              & ( 'PeerGroupPlaceholder' != 'System_String' )
              & ( 'ArrayCategoryInt' != 'System_IConvertible' )
              & ( 'System_String' != 'System_UInt32' )
              & ( 'SharingMode_Unshared' != 'System_UIntPtr' )
              & ( 'System_Type' != 'System_Byte' )
              & ( 'System_Array' != 'System_UIntPtr' )
              & ( 'SharingMode_Unshared' != 'System_Boolean' )
              & ( elements != ownerFrame )
              & ( inv != 'System_Object' )
              & ( inv != 'SharingMode_Unshared' )
              & ( 'ArrayCategoryRef' != 'System_UInt32' )
              & ( 'System_SByte' != 'System_IComparable_1___System_String' )
              & ( 'System_UIntPtr' != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_Unshared' != 'NonNullFieldsAreInitialized' )
              & ( 'SharingMode_LockProtected' != 'System_Boolean' )
              & ( allocated != exposeVersion )
              & ( localinv != 'System_IConvertible' )
              & ( 'PeerGroupPlaceholder' != 'System_IComparable_1___System_String' )
              & ( 'System_Array' != 'System_SByte' )
              & ( allocated != 'System_Boolean' )
              & ( 'System_Byte' != stringLiteral0 )
              & ( 'ArrayCategoryInt' != 'System_IComparable' )
              & ( 'ArrayCategoryNonNullRef' != 'FirstConsistentOwner' )
              & ( 'System_Byte' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_String' != 'System_IComparable_1___System_String' )
              & ( allocated != 'NonNullFieldsAreInitialized' )
              & ( 'System_Int64' != 'System_ICloneable' )
              & ( 'System_Array' != 'System_Type' )
              & ( ownerRef != 'System_Int64' )
              & ( 'System_Array' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( exposeVersion != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_Unshared' != 'System_Int64' )
              & ( localinv != ownerRef )
              & ( 'PeerGroupPlaceholder' != 'System_Byte' )
              & ( sharingMode != 'System_UInt16' )
              & ( elements != ownerRef )
              & ( 'SharingMode_LockProtected' != 'System_Int16' )
              & ( 'System_IEquatable_1___System_String' != 'System_Collections_IEnumerable' )
              & ( 'FirstConsistentOwner' != 'System_IComparable' )
              & ( exposeVersion != 'ArrayCategoryValue' )
              & ( 'System_IEquatable_1___System_String' != 'Factorial' )
              & ( ownerFrame != 'System_Int32' )
              & ( 'System_Array' != 'Factorial' )
              & ( localinv != 'System_SByte' )
              & ( inv != stringLiteral0 )
              & ( 'FirstConsistentOwner' != 'System_SByte' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Object' )
              & ( exposeVersion != 'System_Char' )
              & ( 'System_UInt16' != 'System_IntPtr' )
              & ( 'System_Object' != 'NonNullFieldsAreInitialized' )
              & ( 'PeerGroupPlaceholder' != 'System_UInt32' )
              & ( 'System_SByte' != stringLiteral0 )
              & ( 'FirstConsistentOwner' != 'Factorial' )
              & ( 'System_Array' != 'System_UInt16' )
              & ( 'SharingMode_LockProtected' != 'System_UInt64' )
              & ( 'System_Type' != 'System_ICloneable' )
              & ( 'System_SByte' != 'System_Int32' )
              & ( 'ArrayCategoryValue' != 'ArrayCategoryNonNullRef' )
              & ( 'System_SByte' != 'System_UInt64' )
              & ( 'ArrayCategoryValue' != 'ArrayCategoryRef' )
              & ( 'System_Char' != 'System_UIntPtr' )
              & ( 'ArrayCategoryInt' != 'System_ICloneable' )
              & ( allocated != 'ArrayCategoryValue' )
              & ( 'System_UIntPtr' != 'Factorial' )
              & ( inv != 'System_ICloneable' )
              & ( 'System_SByte' != 'System_IConvertible' )
              & ( exposeVersion != 'System_Object' )
              & ( ownerFrame != 'System_IComparable_1___System_String' )
              & ( 'ArrayCategoryInt' != 'System_Collections_IEnumerable' )
              & ( 'System_IEquatable_1___System_String' != 'System_IComparable_1___System_String' )
              & ( 'ArrayCategoryNonNullRef' != 'System_UIntPtr' )
              & ( 'ArrayCategoryRef' != 'System_SByte' )
              & ( localinv != 'System_Object' )
              & ( 'System_Array' != 'System_Byte' )
              & ( 'System_SByte' != 'System_Byte' )
              & ( 'System_Object' != 'System_UInt32' )
              & ( 'FirstConsistentOwner' != 'System_UInt64' )
              & ( 'ArrayCategoryInt' != 'System_UInt32' )
              & ( ownerRef != 'System_UIntPtr' )
              & ( sharingMode != 'PeerGroupPlaceholder' )
              & ( ownerRef != 'System_IntPtr' )
              & ( allocated != 'System_Byte' )
              & ( 'PeerGroupPlaceholder' != 'System_UIntPtr' )
              & ( 'SharingMode_LockProtected' != stringLiteral0 )
              & ( elements != 'System_UInt64' )
              & ( 'System_Char' != 'System_Collections_IEnumerable' )
              & ( 'System_Int32' != 'System_UIntPtr' )
              & ( 'PeerGroupPlaceholder' != 'System_Boolean' )
              & ( 'System_Type' != 'FirstConsistentOwner' )
              & ( allocated != 'ArrayCategoryNonNullRef' )
              & ( 'System_UInt32' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( exposeVersion != 'Factorial' )
              & ( 'SharingMode_LockProtected' != 'NonNullFieldsAreInitialized' )
              & ( 'System_Type' != 'System_Collections_IEnumerable' )
              & ( elements != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Object' != 'System_IComparable_1___System_String' )
              & ( 'System_Int32' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( sharingMode != 'System_IEquatable_1___System_String' )
              & ( ownerFrame != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_LockProtected' != 'System_UInt16' )
              & ( 'System_IComparable_1___System_String' != stringLiteral0 )
              & ( 'FirstConsistentOwner' != 'System_UInt16' )
              & ( 'ArrayCategoryValue' != 'System_String' )
              & ( 'System_IEquatable_1___System_String' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( ownerFrame != 'System_Byte' )
              & ( 'System_Object' != 'System_SByte' )
              & ( 'ArrayCategoryValue' != 'System_IntPtr' )
              & ( elements != 'System_SByte' )
              & ( 'System_Char' != 'System_IComparable' )
              & ( 'NonNullFieldsAreInitialized' != 'System_String' )
              & ( 'System_UInt16' != 'Factorial' )
              & ( 'ArrayCategoryRef' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( exposeVersion != 'System_Int32' )
              & ( 'ArrayCategoryValue' != 'System_UInt64' )
              & ( exposeVersion != 'System_Collections_IEnumerable' )
              & ( 'SharingMode_LockProtected' != 'ArrayCategoryValue' )
              & ( 'System_UIntPtr' != 'System_Collections_IEnumerable' )
              & ( 'System_Byte' != 'System_IEquatable_1___System_String' )
              & ( 'System_IEquatable_1___System_String' != stringLiteral0 )
              & ( elements != 'System_Int16' )
              & ( 'System_Boolean' != 'Factorial' )
              & ( inv != 'ArrayCategoryNonNullRef' )
              & ( localinv != 'System_Boolean' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Type' )
              & ( 'FirstConsistentOwner' != 'System_Int32' )
              & ( sharingMode != 'System_String' )
              & ( 'ArrayCategoryValue' != 'ArrayCategoryInt' )
              & ( 'PeerGroupPlaceholder' != 'System_Object' )
              & ( 'System_String' != 'System_UIntPtr' )
              & ( 'ArrayCategoryInt' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( allocated != 'Factorial' )
              & ( 'ArrayCategoryRef' != 'System_UInt64' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Int32' )
              & ( 'System_Array' != 'System_IConvertible' )
              & ( inv != ownerFrame )
              & ( allocated != 'System_Int32' )
              & ( 'ArrayCategoryInt' != 'Factorial' )
              & ( 'SharingMode_Unshared' != 'System_IntPtr' )
              & ( inv != 'System_IComparable_1___System_String' )
              & ( ownerRef != 'ArrayCategoryNonNullRef' )
              & ( 'ArrayCategoryInt' != 'ArrayCategoryRef' )
              & ( allocated != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Int16' != 'System_Char' )
              & ( ownerFrame != 'System_Object' )
              & ( 'System_Object' != 'System_UIntPtr' )
              & ( 'System_Byte' != 'System_Collections_IEnumerable' )
              & ( 'System_Boolean' != 'System_SByte' )
              & ( sharingMode != 'SharingMode_Unshared' )
              & ( 'System_IntPtr' != 'Factorial' )
              & ( ownerFrame != 'FirstConsistentOwner' )
              & ( 'System_IConvertible' != 'System_Collections_IEnumerable' )
              & ( 'SharingMode_Unshared' != 'System_ICloneable' )
              & ( ownerRef != stringLiteral0 )
              & ( 'ArrayCategoryRef' != 'System_UInt16' )
              & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'Factorial' )
              & ( 'System_Type' != 'System_Int16' )
              & ( inv != 'System_UInt32' )
              & ( ownerFrame != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_UInt32' != 'System_IComparable_1___System_String' )
              & ( 'FirstConsistentOwner' != 'System_Int64' )
              & ( 'ArrayCategoryRef' != 'Factorial' )
              & ( 'System_Int64' != 'System_IComparable_1___System_String' )
              & ( 'System_Array' != 'System_IEquatable_1___System_String' )
              & ( inv != exposeVersion )
              & ( sharingMode != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( allocated != 'System_String' )
              & ( allocated != 'System_Collections_IEnumerable' )
              & ( inv != 'System_Collections_IEnumerable' )
              & ( 'System_String' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'FirstConsistentOwner' != 'System_Int16' )
              & ( 'NonNullFieldsAreInitialized' != 'System_UInt16' )
              & ( 'System_Type' != 'Factorial' )
              & ( 'ArrayCategoryInt' != 'System_String' )
              & ( inv != 'System_IConvertible' )
              & ( 'System_String' != 'System_SByte' )
              & ( 'PeerGroupPlaceholder' != 'System_IConvertible' )
              & ( sharingMode != ownerFrame )
              & ( 'SharingMode_LockProtected' != 'System_IComparable' )
              & ( elements != 'System_Int64' )
              & ( 'ArrayCategoryInt' != 'System_IComparable_1___System_String' )
              & ( exposeVersion != 'PeerGroupPlaceholder' )
              & ( 'ArrayCategoryNonNullRef' != 'System_UInt32' )
              & ( inv != 'FirstConsistentOwner' )
              & ( 'SharingMode_Unshared' != 'ArrayCategoryInt' )
              & ( 'System_UInt32' != 'System_UInt64' )
              & ( 'System_Byte' != 'System_Int16' )
              & ( sharingMode != 'System_Byte' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Byte' )
              & ( ownerFrame != 'System_UInt64' )
              & ( ownerFrame != 'NonNullFieldsAreInitialized' )
              & ( 'System_Int16' != 'System_IComparable_1___System_String' )
              & ( 'SharingMode_Unshared' != 'Factorial' )
              & ( 'SharingMode_LockProtected' != 'System_Char' )
              & ( 'System_UInt32' != 'Factorial' )
              & ( sharingMode != 'ArrayCategoryNonNullRef' )
              & ( 'System_Type' != 'System_IntPtr' )
              & ( 'SharingMode_Unshared' != 'System_Char' )
              & ( 'ArrayCategoryInt' != 'System_Type' )
              & ( 'System_Int32' != 'System_IConvertible' )
              & ( 'PeerGroupPlaceholder' != 'System_Char' )
              & ( 'System_Object' != 'System_Collections_IEnumerable' )
              & ( 'System_ICloneable' != 'Factorial' )
              & ( elements != 'ArrayCategoryValue' )
              & ( 'System_SByte' != 'System_IntPtr' )
              & ( ownerFrame != 'System_SByte' )
              & ( 'System_Int64' != 'System_IConvertible' )
              & ( 'System_Byte' != 'System_Int32' )
              & ( 'SharingMode_LockProtected' != 'PeerGroupPlaceholder' )
              & ( ownerFrame != 'System_UInt32' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Int64' )
              & ( 'ArrayCategoryRef' != stringLiteral0 )
              & ( 'PeerGroupPlaceholder' != 'System_Int64' )
              & ( localinv != 'System_Char' )
              & ( 'PeerGroupPlaceholder' != 'System_IComparable' )
              & ( 'System_IEquatable_1___System_String' != 'System_IComparable' )
              & ( 'FirstConsistentOwner' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( allocated != 'System_Char' )
              & ( 'System_Array' != 'System_String' )
              & ( 'System_Int64' != 'System_UInt64' )
              & ( 'System_UInt64' != stringLiteral0 )
              & ( 'SharingMode_LockProtected' != 'System_Type' )
              & ( localinv != 'System_ICloneable' )
              & ( localinv != 'System_Int64' )
              & ( 'System_UIntPtr' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'SharingMode_LockProtected' != 'System_IntPtr' )
              & ( 'System_UInt32' != 'System_UIntPtr' )
              & ( inv != localinv )
              & ( exposeVersion != 'ArrayCategoryRef' )
              & ( exposeVersion != 'ArrayCategoryInt' )
              & ( 'ArrayCategoryRef' != 'System_Object' )
              & ( exposeVersion != 'System_Type' )
              & ( exposeVersion != 'System_UInt64' )
              & ( 'System_Array' != 'System_IntPtr' )
              & ( sharingMode != stringLiteral0 )
              & ( localinv != 'System_Int16' )
              & ( 'System_UIntPtr' != 'System_ICloneable' )
              & ( allocated != sharingMode )
              & ( 'PeerGroupPlaceholder' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( ownerRef != 'System_String' )
              & ( 'System_Boolean' != 'System_IntPtr' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Int16' )
              & ( 'ArrayCategoryInt' != 'FirstConsistentOwner' )
              & ( elements != stringLiteral0 )
              & ( 'System_Type' != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_LockProtected' != 'ArrayCategoryRef' )
              & ( ownerFrame != 'ArrayCategoryInt' )
              & ( 'System_Object' != 'System_Int16' )
              & ( elements != 'PeerGroupPlaceholder' )
              & ( exposeVersion != sharingMode )
              & ( exposeVersion != ownerFrame )
              & ( sharingMode != 'System_Boolean' )
              & ( 'System_Int64' != 'System_Char' )
              & ( 'System_ICloneable' != 'System_IComparable' )
              & ( elements != 'System_Array' )
              & ( 'System_Int16' != 'System_Int32' )
              & ( allocated != localinv )
              & ( ownerFrame != 'ArrayCategoryValue' )
              & ( allocated != ownerRef )
              & ( 'System_String' != 'System_Collections_IEnumerable' )
              & ( 'System_Type' != 'System_IComparable' )
              & ( 'System_SByte' != 'System_ICloneable' )
              & ( localinv != 'System_Byte' )
              & ( 'System_UInt64' != 'System_IntPtr' )
              & ( 'System_Array' != 'System_IComparable' )
              & ( allocated != 'System_UInt32' )
              & ( elements != 'ArrayCategoryRef' )
              & ( 'System_UInt64' != 'System_Char' )
              & ( 'System_Char' != 'System_IEquatable_1___System_String' )
              & ( 'System_Char' != 'System_IntPtr' )
              & ( 'System_Type' != 'NonNullFieldsAreInitialized' )
              & ( ownerRef != ownerFrame )
              & ( 'SharingMode_Unshared' != 'ArrayCategoryRef' )
              & ( 'FirstConsistentOwner' != 'System_IConvertible' )
              & ( 'ArrayCategoryRef' != 'System_IEquatable_1___System_String' )
              & ( 'System_Int16' != 'System_UInt64' )
              & ( sharingMode != 'System_Type' )
              & ( elements != 'ArrayCategoryNonNullRef' )
              & ( 'System_Byte' != 'System_Int64' )
              & ( 'SharingMode_Unshared' != 'SharingMode_LockProtected' )
              & ( 'ArrayCategoryValue' != 'System_Boolean' )
              & ( 'System_Byte' != 'System_Char' )
              & ( 'System_IConvertible' != 'Factorial' )
              & ( 'ArrayCategoryRef' != 'ArrayCategoryNonNullRef' )
              & ( localinv != 'System_IntPtr' )
              & ( 'System_IntPtr' != 'System_IEquatable_1___System_String' )
              & ( 'System_Int32' != 'System_IntPtr' )
              & ( 'ArrayCategoryValue' != 'System_ICloneable' )
              & ( 'System_String' != 'System_IConvertible' )
              & ( 'ArrayCategoryInt' != 'System_Array' )
              & ( 'System_String' != 'System_ICloneable' )
              & ( 'System_Array' != stringLiteral0 )
              & ( allocated != 'ArrayCategoryInt' )
              & ( exposeVersion != 'NonNullFieldsAreInitialized' )
              & ( 'System_IConvertible' != 'System_IComparable_1___System_String' )
              & ( 'NonNullFieldsAreInitialized' != 'System_Byte' )
              & ( 'SharingMode_Unshared' != 'System_Type' )
              & ( 'System_String' != 'System_UInt64' )
              & ( localinv != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Int16' != 'System_UIntPtr' )
              & ( elements != 'System_IComparable' )
              & ( localinv != 'System_IEquatable_1___System_String' )
              & ( 'ArrayCategoryRef' != 'System_ICloneable' )
              & ( 'SharingMode_LockProtected' != 'System_UInt32' )
              & ( 'ArrayCategoryNonNullRef' != 'System_UInt64' )
              & ( 'PeerGroupPlaceholder' != 'System_ICloneable' )
              & ( 'System_UInt64' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( ownerFrame != 'System_Collections_IEnumerable' )
              & ( 'System_Array' != 'System_UInt64' )
              & ( 'ArrayCategoryRef' != 'System_Collections_IEnumerable' )
              & ( 'SharingMode_Unshared' != 'System_UInt64' )
              & ( ownerRef != 'ArrayCategoryValue' )
              & ( 'System_UInt64' != 'System_IConvertible' )
              & ( sharingMode != 'System_IntPtr' )
              & ( 'ArrayCategoryRef' != 'System_Boolean' )
              & ( 'System_SByte' != 'System_IEquatable_1___System_String' )
              & ( allocated != 'System_Int16' )
              & ( localinv != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryNonNullRef' != 'Factorial' )
              & ( localinv != 'SharingMode_LockProtected' )
              & ( 'NonNullFieldsAreInitialized' != 'System_Int16' )
              & ( exposeVersion != ownerRef )
              & ( 'System_Type' != 'System_Int32' )
              & ( 'PeerGroupPlaceholder' != 'ArrayCategoryInt' )
              & ( 'System_ICloneable' != 'System_IComparable_1___System_String' )
              & ( 'System_Int16' != stringLiteral0 )
              & ( 'ArrayCategoryValue' != 'System_Byte' )
              & ( 'ArrayCategoryInt' != 'System_Object' )
              & ( inv != 'System_String' )
              & ( inv != 'System_Int16' )
              & ( ownerFrame != 'PeerGroupPlaceholder' )
              & ( elements != inv )
              & ( localinv != stringLiteral0 )
              & ( elements != 'System_UInt16' )
              & ( sharingMode != 'ArrayCategoryValue' )
              & ( 'System_Boolean' != 'FirstConsistentOwner' )
              & ( 'System_Char' != 'System_ICloneable' )
              & ( 'System_Object' != 'System_Int32' )
              & ( 'System_Array' != 'System_Object' )
              & ( ownerRef != 'System_IComparable_1___System_String' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Collections_IEnumerable' )
              & ( 'PeerGroupPlaceholder' != 'ArrayCategoryRef' )
              & ( exposeVersion != 'System_UInt32' )
              & ( 'System_Int32' != 'System_IEquatable_1___System_String' )
              & ( 'System_String' != 'System_Byte' )
              & ( 'System_IntPtr' != 'System_IComparable_1___System_String' )
              & ( 'System_String' != 'System_Int16' )
              & ( 'SharingMode_Unshared' != 'System_Int32' )
              & ( 'System_UInt32' != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_Unshared' != 'System_IEquatable_1___System_String' )
              & ( ownerFrame != 'System_Array' )
              & ( 'System_Array' != 'NonNullFieldsAreInitialized' )
              & ( 'System_Array' != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryNonNullRef' != stringLiteral0 )
              & ( 'ArrayCategoryValue' != 'System_IComparable' )
              & ( 'System_Type' != 'System_UIntPtr' )
              & ( 'System_UInt32' != 'System_Int64' )
              & ( 'System_UInt16' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'SharingMode_Unshared' != 'FirstConsistentOwner' )
              & ( 'ArrayCategoryNonNullRef' != 'System_IntPtr' )
              & ( 'SharingMode_Unshared' != ownerRef )
              & ( 'System_Byte' != 'System_UInt16' )
              & ( 'System_Boolean' != 'System_UIntPtr' )
              & ( exposeVersion != 'System_IComparable' )
              & ( 'System_Int64' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'NonNullFieldsAreInitialized' != 'Factorial' )
              & ( elements != 'System_UIntPtr' )
              & ( 'System_UInt64' != 'System_UIntPtr' )
              & ( inv != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'SharingMode_Unshared' != stringLiteral0 )
              & ( inv != 'System_Boolean' )
              & ( inv != 'System_IComparable' )
              & ( 'System_Type' != 'System_UInt16' )
              & ( exposeVersion != 'System_IConvertible' )
              & ( 'System_String' != 'Factorial' )
              & ( 'System_IntPtr' != stringLiteral0 )
              & ( 'System_ICloneable' != 'System_IConvertible' )
              & ( ownerRef != 'FirstConsistentOwner' )
              & ( exposeVersion != 'System_IntPtr' )
              & ( 'System_Byte' != 'System_IConvertible' )
              & ( allocated != inv )
              & ( sharingMode != 'System_ICloneable' )
              & ( 'System_UInt64' != 'System_ICloneable' )
              & ( ownerRef != 'NonNullFieldsAreInitialized' )
              & ( 'System_Boolean' != 'System_Object' )
              & ( 'System_Object' != 'System_Type' )
              & ( inv != 'System_UIntPtr' )
              & ( 'ArrayCategoryRef' != 'System_Int32' )
              & ( sharingMode != 'NonNullFieldsAreInitialized' )
              & ( ownerRef != 'System_ICloneable' )
              & ( 'SharingMode_LockProtected' != 'System_Int64' )
              & ( 'System_Boolean' != 'System_UInt16' )
              & ( 'ArrayCategoryNonNullRef' != 'System_IComparable_1___System_String' )
              & ( elements != 'System_String' )
              & ( 'ArrayCategoryNonNullRef' != 'System_String' )
              & ( 'System_Array' != 'System_ICloneable' )
              & ( 'System_Object' != stringLiteral0 )
              & ( 'ArrayCategoryValue' != 'System_UIntPtr' )
              & ( 'ArrayCategoryRef' != 'System_IComparable' )
              & ( 'System_Int64' != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryValue' != 'System_Object' )
              & ( 'System_Byte' != 'System_UInt64' )
              & ( 'System_UInt16' != 'System_UInt32' )
              & ( 'ArrayCategoryValue' != 'System_IConvertible' )
              & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != stringLiteral0 )
              & ( 'System_SByte' != 'System_Char' )
              & ( 'System_String' != stringLiteral0 )
              & ( 'System_UInt64' != 'Factorial' )
              & ( 'System_IConvertible' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( localinv != 'System_IComparable_1___System_String' )
              & ( 'SharingMode_Unshared' != 'System_Array' )
              & ( 'System_SByte' != 'Factorial' )
              & ( elements != sharingMode )
              & ( 'SharingMode_LockProtected' != 'ArrayCategoryInt' )
              & ( ownerFrame != 'ArrayCategoryNonNullRef' )
              & ( 'System_Array' != 'System_Boolean' )
              & ( localinv != exposeVersion )
              & ( 'System_UInt16' != 'System_IComparable' )
              & ( 'SharingMode_LockProtected' != 'System_IConvertible' )
              & ( ownerRef != 'System_Byte' )
              & ( 'NonNullFieldsAreInitialized' != 'System_UIntPtr' )
              & ( 'System_IComparable' != 'System_Collections_IEnumerable' )
              & ( 'NonNullFieldsAreInitialized' != stringLiteral0 )
              & ( 'SharingMode_LockProtected' != 'System_SByte' )
              & ( 'FirstConsistentOwner' != 'System_Char' )
              & ( 'System_String' != 'System_Int32' )
              & ( 'ArrayCategoryInt' != 'System_IntPtr' )
              & ( 'PeerGroupPlaceholder' != 'System_IEquatable_1___System_String' )
              & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_IComparable' )
              & ( ownerFrame != 'System_IConvertible' )
              & ( 'NonNullFieldsAreInitialized' != 'System_Int64' )
              & ( exposeVersion != 'System_Int64' )
              & ( ownerRef != 'System_Object' )
              & ( elements != 'Factorial' )
              & ( 'FirstConsistentOwner' != 'System_UInt32' )
              & ( 'System_UIntPtr' != 'System_IComparable' )
              & ( elements != 'System_Collections_IEnumerable' )
              & ( sharingMode != 'ArrayCategoryRef' )
              & ( ownerRef != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_LockProtected' != 'System_Int32' )
              & ( 'System_Boolean' != 'NonNullFieldsAreInitialized' )
              & ( 'System_SByte' != 'System_Int16' )
              & ( 'System_Byte' != 'Factorial' )
              & ( 'PeerGroupPlaceholder' != 'System_Type' )
              & ( 'System_Array' != 'FirstConsistentOwner' )
              & ( sharingMode != 'Factorial' )
              & ( 'ArrayCategoryValue' != 'System_Array' )
              & ( inv != 'System_Char' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Boolean' )
              & ( 'System_ICloneable' != 'System_IEquatable_1___System_String' )
              & ( allocated != 'System_IComparable' )
              & ( ownerRef != 'System_Array' )
              & ( 'FirstConsistentOwner' != 'System_IEquatable_1___System_String' )
              & ( elements != 'System_ICloneable' )
              & ( 'System_UInt16' != 'System_IConvertible' )
              & ( 'System_UInt64' != 'System_Collections_IEnumerable' )
              & ( 'System_UInt32' != 'System_Collections_IEnumerable' )
              & ( exposeVersion != 'System_UInt16' )
              & ( 'PeerGroupPlaceholder' != 'System_SByte' )
              & ( 'ArrayCategoryNonNullRef' != 'System_IConvertible' )
              & ( 'System_UInt32' != 'System_IComparable' )
              & ( 'PeerGroupPlaceholder' != 'System_UInt16' )
              & ( ownerRef != 'System_Int32' )
              & ( 'NonNullFieldsAreInitialized' != 'System_UInt32' )
              & ( ownerRef != 'PeerGroupPlaceholder' )
              & ( exposeVersion != 'System_String' )
              & ( 'System_SByte' != 'System_UInt16' )
              & ( inv != sharingMode )
              & ( 'NonNullFieldsAreInitialized' != 'System_ICloneable' )
              & ( 'NonNullFieldsAreInitialized' != 'System_IEquatable_1___System_String' )
              & ( allocated != 'System_IntPtr' )
              & ( 'System_ICloneable' != stringLiteral0 )
              & ( 'NonNullFieldsAreInitialized' != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryRef' != 'System_Array' )
              & ( 'System_Int64' != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_LockProtected' != ownerFrame )
              & ( inv != 'System_Byte' )
              & ( 'System_IntPtr' != 'System_IConvertible' )
              & ( 'ArrayCategoryInt' != 'System_Int32' )
              & ( 'System_Int16' != 'System_ICloneable' )
              & ( 'SharingMode_LockProtected' != ownerRef )
              & ( elements != 'System_Type' )
              & ( inv != 'System_IEquatable_1___System_String' )
              & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_IComparable_1___System_String' )
              & ( 'System_Object' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'SharingMode_Unshared' != 'System_IComparable' )
              & ( 'System_UInt64' != 'System_IComparable' )
              & ( 'System_String' != 'System_Char' )
              & ( 'FirstConsistentOwner' != 'System_IComparable_1___System_String' )
              & ( sharingMode != 'System_UInt32' )
              & ( 'System_UInt16' != 'System_UInt64' )
              & ( 'ArrayCategoryInt' != 'System_Boolean' )
              & ( 'System_Object' != 'System_Int64' )
              & ( 'System_Object' != 'Factorial' )
              & ( 'SharingMode_Unshared' != 'PeerGroupPlaceholder' )
              & ( sharingMode != 'System_Int16' )
              & ( 'System_UInt32' != 'System_ICloneable' )
              & ( 'System_Object' != 'System_ICloneable' )
              & ( 'System_IntPtr' != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryNonNullRef' != 'System_SByte' )
              & ( elements != 'SharingMode_LockProtected' )
              & ( inv != ownerRef )
              & ( 'ArrayCategoryInt' != 'System_IEquatable_1___System_String' )
              & ( 'System_Object' != 'System_IntPtr' )
              & ( ownerFrame != 'System_UInt16' )
              & ( elements != 'System_Boolean' )
              & ( 'ArrayCategoryRef' != 'System_IConvertible' )
              & ( 'System_IntPtr' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Type' != 'System_SByte' )
              & ( ownerRef != 'System_Type' )
              & ( 'PeerGroupPlaceholder' != 'System_IntPtr' )
              & ( 'System_ICloneable' != 'System_Collections_IEnumerable' )
              & ( 'System_Int16' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Int32' != stringLiteral0 )
              & ( 'System_Type' != 'System_IConvertible' )
              & ( ownerFrame != 'System_IComparable' )
              & ( 'NonNullFieldsAreInitialized' != 'System_IComparable_1___System_String' )
              & ( 'System_Boolean' != 'System_Char' )
              & ( 'System_IConvertible' != stringLiteral0 )
              & ( 'SharingMode_LockProtected' != 'System_UIntPtr' )
              & ( 'System_UInt32' != stringLiteral0 )
              & ( ownerRef != 'ArrayCategoryInt' )
              & ( 'SharingMode_LockProtected' != 'System_Array' )
              & ( 'System_Boolean' != 'System_IComparable' )
              & ( 'ArrayCategoryInt' != 'System_Int64' )
              & ( sharingMode != 'System_UIntPtr' )
              & ( localinv != 'System_UInt64' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Array' )
              & ( 'System_Boolean' != 'System_ICloneable' )
              & ( localinv != 'System_Int32' )
              & ( 'PeerGroupPlaceholder' != stringLiteral0 )
              & ( 'Factorial' != stringLiteral0 )
              & ( ownerRef != 'System_Boolean' )
              & ( allocated != elements )
              & ( 'System_UInt16' != 'System_Int32' )
              & ( 'ArrayCategoryRef' != 'System_Int64' )
              & ( ownerFrame != 'System_Boolean' )
              & ( 'PeerGroupPlaceholder' != 'ArrayCategoryValue' )
              & ( 'System_Int16' != 'System_IConvertible' )
              & ( 'ArrayCategoryNonNullRef' != 'NonNullFieldsAreInitialized' )
              & ( localinv != 'System_Type' )
              & ( ownerRef != 'System_IComparable' )
              & ( 'ArrayCategoryInt' != 'System_Char' )
              & ( 'ArrayCategoryRef' != 'System_IntPtr' )
              & ( 'ArrayCategoryValue' != 'System_Type' )
              & ( 'ArrayCategoryRef' != 'System_String' )
              & ( 'System_Boolean' != 'System_String' )
              & ( 'System_Object' != 'System_Char' )
              & ( inv != 'System_Int32' )
              & ( 'System_SByte' != 'System_UInt32' )
              & ( 'SharingMode_Unshared' != 'System_UInt16' )
              & ( 'SharingMode_LockProtected' != 'Factorial' )
              & ( 'System_Byte' != 'System_IntPtr' )
              & ( 'System_Int32' != 'Factorial' )
              & ( 'PeerGroupPlaceholder' != 'ArrayCategoryNonNullRef' )
              & ( 'System_Boolean' != 'System_Int64' )
              & ( 'SharingMode_Unshared' != 'ArrayCategoryValue' )
              & ( sharingMode != 'System_Object' )
              & ( 'FirstConsistentOwner' != 'System_Byte' )
              & ( inv != 'System_IntPtr' ) )
          | ( 'IsStaticField'(inv) = true_1 )
          | ~ ! [X39: $int,X38: $int,X7: $int] : ( 'StructGet'('StructSet'(X38,X39,X7),X39) = X7 )
          | ~ ! [X70: $int,X71: $int,X69: $int,X7: $int] :
                ( ( 'IsValueType'('UnboxedType'(X7)) != true_1 )
               => ( 'BoxFunc'(X7,X69,X70,X71) = X7 ) )
          | ( 'IncludeInMainFrameCondition'(ownerFrame) != true_1 )
          | ~ ! [X36: $int] : ( 'IsMemberlessType'(typeof(X36)) != true_1 )
          | ~ ! [X4: $int,X9: $int,X47: $int] :
                ~ ( ~ ( ( X9 = X47 )
                     => ( 'StringEquals'(X9,X47) = true_1 ) )
                  | ~ ( ( 'StringEquals'(X47,X9) = true_1 )
                    <=> ( 'System_String_Equals_System_String_System_String'(X4,X9,X47) = true_1 ) )
                  | ~ ( ( 'StringEquals'(X9,X47) = true_1 )
                    <=> ( 'System_String_Equals_System_String_System_String'(X4,X9,X47) = true_1 ) ) )
          | ( x('Factorial','Factorial') != true_1 )
          | ~ ! [X36: $int,X4: $int,X39: $int,X3: $int] :
                ( ( 'IsHeap'(X4) = true_1 )
               => ( 'InRange'(select2(X4,X36,'AsRangeField'(X39,X3)),X3) = true_1 ) )
          | ~ $less(int_4294967295,int_9223372036854775807)
          | ~ ! [X6: $int] :
                ( ~ ( ~ $lesseq(X6,int_2147483647)
                    | ~ $lesseq(int_m2147483648,X6) )
              <=> ( 'InRange'(X6,'System_Int32') = true_1 ) )
          | ~ ! [X3: $int] :
              ? [X41: $int] :
                ( ~ ( ( x(X3,X41) != true_1 )
                    | ~ ( ( X3 != 'System_Object' )
                       => ( X3 != X41 ) ) )
                & ( X41 = 'BaseClass'(X3) ) )
          | ( 'IsImmutable'('System_String') != true_1 )
          | ~ ! [X12: $int,X6: $int,X9: $int] :
                ( ( 'IsHeap'(X12) = true_1 )
               => ( 'InRange'('IntArrayGet'(select2(X12,X9,elements),X6),'ElementType'(typeof(X9))) = true_1 ) )
          | ( x('System_IComparable_1___System_String','System_IComparable_1___System_String') != true_1 )
          | ( 'IsStaticField'(elements) = true_1 )
          | ( x('System_Collections_Generic_IEnumerable_1___System_Char','System_Collections_IEnumerable') != true_1 )
          | ~ ! [X36: $int,X4: $int] :
                ( ( 'IsAllocated'(X4,X36) = true_1 )
               => ( select2(X4,X36,allocated) = true_1 ) )
          | ~ ! [X6: $int,X45: $int,X4: $int] :
                ( ( 'IsAllocated'(X4,X45) = true_1 )
               => ( 'IsAllocated'(X4,'ValueArrayGet'(X45,X6)) = true_1 ) )
          | ( 'DeclType'('NonNullFieldsAreInitialized') != 'System_Object' )
          | ~ ! [X3: $int,X4: $int] :
                ( ( 'IsHeap'(X4) = true_1 )
               => ( select2(X4,'ClassRepr'(X3),ownerFrame) = 'PeerGroupPlaceholder' ) )
          | ( x('System_Type','System_Object') != true_1 )
          | ( x('System_Collections_IEnumerable','System_Collections_IEnumerable') != true_1 )
          | ~ ! [X73: $int,X69: $int] :
                ( ( 'BoxTester'(X73,X69) != nullObject )
              <=> ( 'UnboxedType'(X73) = X69 ) )
          | ( 'IsValueType'('System_Byte') != true_1 )
          | ~ ! [X11: $int,X7: $int] :
              ? [X86: $int] :
                ( ~ ( ~ $lesseq(X7,X86)
                    | ~ ( ( X86 = X7 )
                        | ( X86 = X11 ) )
                    | ~ $lesseq(X11,X86) )
                & ( X86 = max(X7,X11) ) )
          | ( 'IsMemberlessType'('System_IConvertible') != true_1 )
          | ( x('System_Collections_Generic_IEnumerable_1___System_Char','System_Object') != true_1 )
          | ~ ! [X87: $int,X88: $int] :
                ( ~ ( ( select2(X88,X87,localinv) = X0 )
                    | ( 'IsHeap'(X88) != true_1 )
                    | ( x(select2(X88,X87,inv),'System_String') != true_1 ) )
               => $true )
          | ~ ! [X4: $int,X39: $int,X36: $int] :
              ? [X61: $int,X62: $int] :
                ( ( X62 = select2(X4,X36,ownerRef) )
                & ( ~ ( ( 'IsHeap'(X4) != true_1 )
                      | ( X61 = 'PeerGroupPlaceholder' )
                      | ( X36 = nullObject )
                      | ( 'AsPureObject'(X36) != X36 )
                      | ( select2(X4,X62,localinv) = 'BaseClass'(X61) )
                      | ( x(select2(X4,X62,inv),X61) != true_1 )
                      | ~ ( $true
                        <=> ( select2(X4,X36,allocated) = true_1 ) ) )
                 => ( select2(X4,X36,X39) = 'FieldDependsOnFCO'(X36,X39,select2(X4,select2(X4,X36,'FirstConsistentOwner'),exposeVersion)) ) )
                & ( X61 = select2(X4,X36,ownerFrame) ) )
          | ( 'IsMemberlessType'('System_Collections_Generic_IEnumerable_1___System_Char') != true_1 )
          | ~ ! [X6: $int,X8: $int] :
                ( $lesseq(1,X8)
               => ( shr(X6,X8) = x_1(shr(X6,$difference(X8,1)),2) ) )
          | ~ ! [X4: $int,X39: $int,X36: $int] :
              ? [X53: $int] :
                ( ( X53 = select2(X4,X36,'AsPeerField'(X39)) )
                & ( ~ ( ( 'IsHeap'(X4) != true_1 )
                      | ( X53 = nullObject ) )
                 => ~ ( ( select2(X4,X53,ownerFrame) != select2(X4,X36,ownerFrame) )
                      | ( select2(X4,X53,ownerRef) != select2(X4,X36,ownerRef) ) ) ) )
          | ( 'StringLength'(stringLiteral0) != 19 )
          | ( $sum(int_m2147483648,1) != $difference(0,int_2147483647) )
          | ~ ! [X69: $int,X73: $int] :
                ( ( 'BoxTester'(X73,X69) != nullObject )
               => ( 'Box'('Unbox'(X73),X73) = X73 ) )
          | ~ ! [X11: $int,X7: $int] :
              ? [X85: $int] :
                ( ( X85 = min(X7,X11) )
                & ~ ( ~ $lesseq(X85,X7)
                    | ~ ( ( X85 = X7 )
                        | ( X85 = X11 ) )
                    | ~ $lesseq(X85,X11) ) )
          | ~ ! [X6: $int] :
                ( ( 'InRange'(X6,'System_UInt32') = true_1 )
              <=> ~ ( ~ $lesseq(0,X6)
                    | ~ $lesseq(X6,int_4294967295) ) )
          | ( 'IsImmutable'('Factorial') = true_1 )
          | ~ ! [X7: $int,X11: $int,X47: $int] :
                ( ( X47 != true_1 )
               => ( 'IfThenElse'(X47,X7,X11) = X11 ) )
          | ~ ! [X3: $int,X14: $int] :
              ? [X19: $int] :
                ( ( X19 = 'RefArray'(X3,X14) )
                & ~ ( ( x(X19,'System_Array') != true_1 )
                    | ( x(X19,X19) != true_1 ) ) )
          | ~ $less(int_m9223372036854775808,int_m2147483648)
          | ~ ( ( 'PurityAxiomsCanBeAssumed' = true_1 )
             => ! [X91: $int,X90: $int] :
                ? [X92: $int] :
                  ( ( ( 'IsHeap'(X90) = true_1 )
                   => ~ ( ~ ( ( X91 != 0 )
                           => ( X92 = $product(X91,'Factorial_recursiveFac_System_Int32'(X90,$difference(X91,1))) ) )
                        | ~ ( ( X91 = 0 )
                           => ( X92 = 1 ) ) ) )
                  & ( X92 = 'Factorial_recursiveFac_System_Int32'(X90,X91) ) ) )
          | ~ ! [X11: $int,X7: $int] :
                ( ( $lesseq(0,X7)
                  | $lesseq(0,X11) )
               => $lesseq(0,and_1(X7,X11)) )
          | ~ ! [X8: $int,X6: $int,X7: $int,X5: $int] :
                ( ( X6 != X8 )
               => ( 'ValueArrayGet'('ValueArraySet'(X5,X6,X7),X8) = 'ValueArrayGet'(X5,X8) ) )
          | ~ ! [X12: $int] :
                ( ( 'IsHeap'(X12) = true_1 )
               => ( 'System_String_IsInterned_System_String_notnull'(X12,stringLiteral0) = stringLiteral0 ) )
          | ~ ! [X3: $int,X14: $int] :
              ? [X20: $int] :
                ( ( X20 = 'NonNullRefArray'(X3,X14) )
                & ~ ( ( x(X20,'System_Array') != true_1 )
                    | ( x(X20,X20) != true_1 ) ) )
          | ~ ! [X6: $int] :
                ( ~ ( ~ $lesseq($difference(0,128),X6)
                    | ~ $less(X6,128) )
              <=> ( 'InRange'(X6,'System_SByte') = true_1 ) )
          | ~ ! [X38: $int] : $lesseq(0,'StringLength'(X38))
          | ~ ! [X5: $int,X14: $int] : ( 'ElementType'('ValueArray'(X5,X14)) = X5 )
          | ( x('System_String','System_Collections_IEnumerable') != true_1 )
          | ~ ! [X6: $int,X7: $int,X5: $int] : ( 'ValueArrayGet'('ValueArraySet'(X5,X6,X7),X6) = X7 )
          | ~ ! [X47: $int,X9: $int,X4: $int] :
                ( ( 'System_String_Equals_System_String'(X4,X9,X47) = true_1 )
              <=> ( 'System_String_Equals_System_String_System_String'(X4,X9,X47) = true_1 ) )
          | ( 'AsInterface'('System_IEquatable_1___System_String') != 'System_IEquatable_1___System_String' )
          | ~ ! [X47: $int,X38: $int,X46: $int] :
              ? [X48: $int,X49: $int] :
                ( ( ~ ( ( X48 != X46 )
                      | ( X49 != X47 )
                      | ( x('UnboxedType'(X49),X48) != true_1 ) )
                 => ( x(typeof(X47),X46) = true_1 ) )
                & ( X48 = 'AsInterface'(X46) )
                & ( X49 = 'Box'(X38,X47) ) )
          | ~ ! [X7: $int,X6: $int,X5: $int,X8: $int] :
                ( ( X6 != X8 )
               => ( 'RefArrayGet'('RefArraySet'(X5,X6,X7),X8) = 'RefArrayGet'(X5,X8) ) )
          | ~ ! [X14: $int,X5: $int] : ( 'ElementType'('IntArray'(X5,X14)) = X5 )
          | ~ ! [X12: $int,X9: $int,X6: $int] :
              ? [X13: $int] :
                ( ( ~ ( ( 'IsHeap'(X12) != true_1 )
                      | ( X13 = nullObject ) )
                 => ( x(typeof(X13),'ElementType'(typeof(X9))) = true_1 ) )
                & ( X13 = 'RefArrayGet'(select2(X12,X9,elements),X6) ) )
          | ( x('System_IConvertible','System_Object') != true_1 )
          | ( 'AsDirectSubClass'('Factorial',X1) != 'Factorial' )
          | ~ ! [X14: $int,X5: $int] : ( 'ElementType'('NonNullRefArray'(X5,X14)) = X5 )
          | ( x('System_String','System_ICloneable') != true_1 )
          | ~ ! [X6: $int,X4: $int,X45: $int] :
                ( ( 'IsAllocated'(X4,X45) = true_1 )
               => ( 'IsAllocated'(X4,'RefArrayGet'(X45,X6)) = true_1 ) )
          | ~ ! [X3: $int,X14: $int,X5: $int] :
              ? [X33: $int] :
                ( ( ( x(X33,X3) = true_1 )
                 => ( ( x('System_Array',X3) = true_1 )
                    | ( X3 = X33 ) ) )
                & ( X33 = 'IntArray'(X5,X14) ) )
          | ( 'AsInterface'('System_ICloneable') != 'System_ICloneable' ) )
      & ( X0 = 'BaseClass'('System_String') )
      & ( X1 = 'BaseClass'('Factorial') ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',formula_2) ).

tff(f3,axiom,
    ? [X2: $int,X0: $int,X1: $int] :
      ( ( X1 = select2('Heap_1',this,ownerFrame) )
      & ( X2 = select2('Heap_1',this,ownerRef) )
      & ( X0 = typeof(this) )
      & ? [X3: $int,X4: $int] :
          ( ( X4 = select2('Heap',this,ownerRef) )
          & ( X3 = select2('Heap',this,ownerFrame) )
          & ? [X6: $int,X5: $int] :
              ( ~ ( ( ( ( 'IsHeap'('Heap') = true_1 )
                     => ( ~ ( ( 'IsNotNull'(this,'Factorial') != true_1 )
                            | ( select2('Heap',this,allocated) != true_1 ) )
                       => ( ( 'PurityAxiomsCanBeAssumed' = true_1 )
                         => ( ( 'BeingConstructed' = this )
                           => ( ~ ( ( X3 != 'PeerGroupPlaceholder' )
                                  | ( X4 != this )
                                  | ~ ! [X7: $int] :
                                        ( ( X7 != this )
                                       => ( select2('Heap',X7,ownerRef) != this ) ) )
                             => ( ~ ( ~ ( ( select2('Heap',X4,localinv) = 'BaseClass'(X3) )
                                        | ( x(select2('Heap',X4,inv),X3) != true_1 )
                                        | ( X3 = 'PeerGroupPlaceholder' ) )
                                    | ( select2('Heap',this,localinv) != X0 )
                                    | ( select2('Heap',this,inv) != 'System_Object' ) )
                               => ( ( ( ( ~ ( ( this = nullObject )
                                            | ~ ( ( this != nullObject )
                                               => ( ( 'IsHeap'('Heap_0') = true_1 )
                                                 => ( ( select2('Heap_0',this,allocated) = true_1 )
                                                   => ( ~ ( ( select2('Heap_0',this,localinv) != X0 )
                                                          | ( select2('Heap_0',this,inv) != 'System_Object' )
                                                          | ~ ( ( select2('Heap_0',X6,localinv) = 'BaseClass'(X5) )
                                                              | ( x(select2('Heap_0',X6,inv),X5) != true_1 )
                                                              | ( X5 = 'PeerGroupPlaceholder' ) ) )
                                                     => ( ~ ( ( X6 != X4 )
                                                            | ( X5 != X3 ) )
                                                       => ( ( select2('Heap_0',this,sharingMode) = 'SharingMode_Unshared' )
                                                         => ( ! [X7: $int] :
                                                              ? [X8: $int] :
                                                                ( ( X8 = typeof(X7) )
                                                                & ( ~ ( ( select2('Heap',X7,allocated) = true_1 )
                                                                      | ( X7 = nullObject )
                                                                      | ( select2('Heap_0',X7,allocated) != true_1 ) )
                                                                 => ~ ( ( select2('Heap_0',X7,inv) != X8 )
                                                                      | ( select2('Heap_0',X7,localinv) != X8 ) ) ) )
                                                           => ( ! [X7: $int] :
                                                                ? [X9: $int] :
                                                                  ( ( X9 = select2('Heap',X7,'FirstConsistentOwner') )
                                                                  & ( ( select2('Heap',X9,exposeVersion) = select2('Heap_0',X9,exposeVersion) )
                                                                   => ( X9 = select2('Heap_0',X7,'FirstConsistentOwner') ) ) )
                                                             => ( ! [X10: $int,X7: $int] :
                                                                  ? [X12: $int,X11: $int] :
                                                                    ( ( X11 = select2('Heap',X7,ownerFrame) )
                                                                    & ( ~ ( ( X7 = nullObject )
                                                                          | ~ ( ( X7 != this )
                                                                              | ( x('System_Object','DeclType'(X10)) != true_1 ) )
                                                                          | ~ ( ( select2('Heap',X12,localinv) = 'BaseClass'(X11) )
                                                                              | ( x(select2('Heap',X12,inv),X11) != true_1 )
                                                                              | ( X11 = 'PeerGroupPlaceholder' ) )
                                                                          | ( 'IncludeInMainFrameCondition'(X10) != true_1 )
                                                                          | ( select2('Heap',X7,allocated) != true_1 ) )
                                                                     => ( select2('Heap',X7,X10) = select2('Heap_0',X7,X10) ) )
                                                                    & ( X12 = select2('Heap',X7,ownerRef) ) )
                                                               => ( ( 'HeapSucc'('Heap','Heap_0') = true_1 )
                                                                 => ( ! [X7: $int] :
                                                                        ( ~ ( ( select2('Heap',X7,allocated) != true_1 )
                                                                            | ( X7 = this ) )
                                                                       => ~ ( ( select2('Heap',X7,inv) != select2('Heap_0',X7,inv) )
                                                                            | ( select2('Heap',X7,localinv) != select2('Heap_0',X7,localinv) ) ) )
                                                                   => ( ~ ( ~ ! [X13: $int] :
                                                                              ? [X14: $int] :
                                                                                ( ( X14 = select2('Heap',X13,ownerFrame) )
                                                                                & ( ~ ( ( select2('Heap',X13,allocated) != true_1 )
                                                                                      | ( X14 = 'PeerGroupPlaceholder' ) )
                                                                                 => ~ ( ( select2('Heap_0',X13,ownerRef) != select2('Heap',X13,ownerRef) )
                                                                                      | ( select2('Heap_0',X13,ownerFrame) != X14 ) ) ) )
                                                                          | ~ ! [X7: $int] :
                                                                                ( ( select2('Heap',X7,allocated) = true_1 )
                                                                               => ( select2('Heap_0',X7,allocated) = true_1 ) )
                                                                          | ~ ( ( select2('Heap_0','BeingConstructed','NonNullFieldsAreInitialized') = true_1 )
                                                                            <=> ( select2('Heap','BeingConstructed','NonNullFieldsAreInitialized') = true_1 ) ) )
                                                                     => ( ! [X7: $int] :
                                                                            ( ( X7 = this )
                                                                            | ( select2('Heap',X7,sharingMode) = select2('Heap_0',X7,sharingMode) ) )
                                                                       => ~ ( ( this = nullObject )
                                                                            | ~ ( ( this != nullObject )
                                                                               => ~ ( ~ ~ ( ( select2('Heap_0',this,inv) != 'System_Object' )
                                                                                          | ( select2('Heap_0',this,localinv) != X0 ) )
                                                                                    | ~ ( ~ ( ( select2('Heap_0',this,inv) != 'System_Object' )
                                                                                            | ( select2('Heap_0',this,localinv) != X0 ) )
                                                                                       => ~ ( ~ ( ! [X15: $int] :
                                                                                                  ? [X17: $int] :
                                                                                                    ( ( X17 = typeof(X15) )
                                                                                                    & ( ~ ( ( select2('Heap_0',X15,ownerFrame) != 'Factorial' )
                                                                                                          | ( select2('Heap_0',X15,ownerRef) != this )
                                                                                                          | ( select2('Heap_0',X15,allocated) != true_1 )
                                                                                                          | ( X15 = nullObject ) )
                                                                                                     => ~ ( ( select2('Heap_0',X15,localinv) != X17 )
                                                                                                          | ( select2('Heap_0',X15,inv) != X17 ) ) ) )
                                                                                               => ( ( 'Heap_1' = store2('Heap_0',this,inv,'Factorial') )
                                                                                                 => ( ( 'IsHeap'('Heap_1') = true_1 )
                                                                                                   => ( ( ~ ( ~ ! [X10: $int,X7: $int] :
                                                                                                                ? [X19: $int,X18: $int] :
                                                                                                                  ( ( X18 = select2('Heap',X7,ownerFrame) )
                                                                                                                  & ( ~ ( ~ ( ( x('Factorial','DeclType'(X10)) != true_1 )
                                                                                                                            | ( X7 != this ) )
                                                                                                                        | ( select2('Heap',X7,allocated) != true_1 )
                                                                                                                        | ( 'IncludeInMainFrameCondition'(X10) != true_1 )
                                                                                                                        | ( X7 = nullObject )
                                                                                                                        | ~ ( ( select2('Heap',X19,localinv) = 'BaseClass'(X18) )
                                                                                                                            | ( X18 = 'PeerGroupPlaceholder' )
                                                                                                                            | ( x(select2('Heap',X19,inv),X18) != true_1 ) ) )
                                                                                                                   => ( select2('Heap',X7,X10) = select2('Heap_1',X7,X10) ) )
                                                                                                                  & ( X19 = select2('Heap',X7,ownerRef) ) )
                                                                                                            | ~ ( ! [X10: $int,X7: $int] :
                                                                                                                  ? [X21: $int,X20: $int] :
                                                                                                                    ( ( X20 = select2('Heap',X7,ownerFrame) )
                                                                                                                    & ( ~ ( ( select2('Heap',X7,allocated) != true_1 )
                                                                                                                          | ( 'IncludeInMainFrameCondition'(X10) != true_1 )
                                                                                                                          | ( X7 = nullObject )
                                                                                                                          | ~ ( ( x('Factorial','DeclType'(X10)) != true_1 )
                                                                                                                              | ( X7 != this ) )
                                                                                                                          | ~ ( ( select2('Heap',X21,localinv) = 'BaseClass'(X20) )
                                                                                                                              | ( X20 = 'PeerGroupPlaceholder' )
                                                                                                                              | ( x(select2('Heap',X21,inv),X20) != true_1 ) ) )
                                                                                                                     => ( select2('Heap',X7,X10) = select2('Heap_1',X7,X10) ) )
                                                                                                                    & ( X21 = select2('Heap',X7,ownerRef) ) )
                                                                                                               => ~ ( ~ ( ( select2('Heap_1',this,sharingMode) = 'SharingMode_Unshared' )
                                                                                                                       => ~ ( ~ ( ~ ( ( X1 != X3 )
                                                                                                                                    | ( X2 != X4 ) )
                                                                                                                               => ~ ( ~ ~ ( ~ ( ( X1 = 'PeerGroupPlaceholder' )
                                                                                                                                              | ( select2('Heap_1',X2,localinv) = 'BaseClass'(X1) )
                                                                                                                                              | ( x(select2('Heap_1',X2,inv),X1) != true_1 ) )
                                                                                                                                          | ( select2('Heap_1',this,localinv) != X0 )
                                                                                                                                          | ( select2('Heap_1',this,inv) != 'Factorial' ) )
                                                                                                                                    | ~ ( ~ ( ( select2('Heap_1',this,inv) != 'Factorial' )
                                                                                                                                            | ~ ( ( select2('Heap_1',X2,localinv) = 'BaseClass'(X1) )
                                                                                                                                                | ( x(select2('Heap_1',X2,inv),X1) != true_1 )
                                                                                                                                                | ( X1 = 'PeerGroupPlaceholder' ) )
                                                                                                                                            | ( select2('Heap_1',this,localinv) != X0 ) )
                                                                                                                                       => $true ) ) )
                                                                                                                            | ~ ~ ( ( X1 != X3 )
                                                                                                                                  | ( X2 != X4 ) ) ) )
                                                                                                                    | ( select2('Heap_1',this,sharingMode) != 'SharingMode_Unshared' ) ) ) )
                                                                                                       => ( 'ReallyLastGeneratedExit_correct' = true_1 ) )
                                                                                                     => ( 'ReallyLastGeneratedExit_correct' = true_1 ) ) ) ) )
                                                                                            | ~ ! [X15: $int] :
                                                                                                ? [X16: $int] :
                                                                                                  ( ( ~ ( ( select2('Heap_0',X15,ownerFrame) != 'Factorial' )
                                                                                                        | ( X15 = nullObject )
                                                                                                        | ( select2('Heap_0',X15,allocated) != true_1 )
                                                                                                        | ( select2('Heap_0',X15,ownerRef) != this ) )
                                                                                                   => ~ ( ( select2('Heap_0',X15,localinv) != X16 )
                                                                                                        | ( select2('Heap_0',X15,inv) != X16 ) ) )
                                                                                                  & ( X16 = typeof(X15) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
                                       => ( block4301_correct = true_1 ) )
                                     => ( block4301_correct = true_1 ) )
                                   => ( block4284_correct = true_1 ) )
                                 => ( block4284_correct = true_1 ) ) ) ) ) ) ) )
                   => ( entry_correct = true_1 ) )
                 => ( entry_correct = true_1 ) )
              & ( X5 = select2('Heap_0',this,ownerFrame) )
              & ( X6 = select2('Heap_0',this,ownerRef) ) ) ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',formula_3) ).

tff(f4,plain,
    ? [X1: $int,X0: $int] :
      ( ~ ( ~ ! [X6: $int,X8: $int] :
              ? [X84: $int] :
                ( ( X84 = shl(X6,X8) )
                & ( ~ ( $less(X8,0)
                      | $less(16,X8)
                      | ~ $less(X6,32768)
                      | $less(X6,0) )
                 => ~ ( $less(X84,0)
                      | $less(int_2147483647,X84) ) ) )
          | ~ ! [X9: $int,X14: $int,X3: $int] :
                ( ~ ( ( X9 = nullObject )
                    | ( x(typeof(X9),'IntArray'(X3,X14)) != true_1 ) )
               => ( 'Rank'(X9) = X14 ) )
          | ( x('System_String','System_IEquatable_1___System_String') != true_1 )
          | ( 'AsInterface'('System_IConvertible') != 'System_IConvertible' )
          | ~ ! [X12: $int,X6: $int,X9: $int] :
              ? [X35: $int,X34: $int] :
                ( ( ~ ( ( x(typeof(X9),'System_Array') != true_1 )
                      | ( 'IsHeap'(X12) != true_1 ) )
                 => ( ( 'IsImmutable'(typeof(X35)) = true_1 )
                    | ( X35 = nullObject )
                    | ~ ( ( select2(X12,X35,ownerFrame) != select2(X12,X34,ownerFrame) )
                        | ( select2(X12,X35,ownerRef) != select2(X12,X34,ownerRef) ) ) ) )
                & ( X35 = 'RefArrayGet'(select2(X12,X9,elements),X6) )
                & ( 'ElementProxy'(X9,$sum(0,$uminus(1))) = X34 ) )
          | ~ ! [X42: $int,X77: $int,X43: $int] :
                ( ( 'InRange'(X77,X43) = true_1 )
               => ( 'IntToInt'(X77,X42,X43) = X77 ) )
          | ~ ! [X3: $int,X14: $int] :
              ? [X18: $int] :
                ( ~ ( ( x(X18,'System_Array') != true_1 )
                    | ( x(X18,X18) != true_1 ) )
                & ( X18 = 'IntArray'(X3,X14) ) )
          | ( 'IsStaticField'(allocated) = true_1 )
          | ( 'IsMemberlessType'('System_IComparable') != true_1 )
          | ( 'IncludedInModifiesStar'(ownerRef) = true_1 )
          | ~ ! [X36: $int,X4: $int,X39: $int] :
                ( ~ ( ( 'IsHeap'(X4) != true_1 )
                    | ( select2(X4,X36,allocated) != true_1 ) )
               => ( 'IsAllocated'(X4,select2(X4,X36,X39)) = true_1 ) )
          | ~ ! [X6: $int] :
                ( ( 'InRange'(X6,'System_Char') = true_1 )
              <=> ~ ( ~ $less(X6,65536)
                    | $less(X6,0) ) )
          | ~ ! [X3: $int] : ( 'ClassRepr'(X3) != nullObject )
          | ~ ! [X3: $int,X25: $int] :
                ( ( x(X25,'AsMutable'(X3)) = true_1 )
               => ~ ( ( 'IsImmutable'(X25) = true_1 )
                    | ( 'AsMutable'(X25) != X25 ) ) )
          | ( 'IsValueType'('System_Int16') != true_1 )
          | ( 'IncludedInModifiesStar'(ownerFrame) = true_1 )
          | ~ ! [X7: $int,X11: $int] : ( x_2(X7,X11) = $sum(X7,$uminus($product(x_1(X7,X11),X11))) )
          | ( 'IsImmutable'('System_Object') = true_1 )
          | ~ ! [X3: $int,X5: $int,X14: $int] :
              ? [X32: $int] :
                ( ( X32 = 'ValueArray'(X5,X14) )
                & ( ( x(X32,X3) = true_1 )
                 => ( ( X3 = X32 )
                    | ( x('System_Array',X3) = true_1 ) ) ) )
          | ~ ! [X36: $int,X3: $int] :
                ( ( 'IsNotNull'(X36,X3) = true_1 )
              <=> ~ ( ( 'Is'(X36,X3) != true_1 )
                    | ( X36 = nullObject ) ) )
          | ~ ! [X14: $int,X9: $int,X3: $int] :
                ( ~ ( ( X9 = nullObject )
                    | ( x(typeof(X9),'NonNullRefArray'(X3,X14)) != true_1 ) )
               => ( 'Rank'(X9) = X14 ) )
          | ~ ! [X4: $int,X36: $int] :
              ? [X59: $int,X60: $int,X58: $int] :
                ( ( X60 = select2(X4,X36,ownerRef) )
                & ( ~ ( ( X59 = 'PeerGroupPlaceholder' )
                      | ( select2(X4,X60,localinv) = 'BaseClass'(X59) )
                      | ( 'IsHeap'(X4) != true_1 )
                      | ( x(select2(X4,X60,inv),X59) != true_1 ) )
                 => ~ ( ( select2(X4,X36,inv) != X58 )
                      | ( select2(X4,X36,localinv) != X58 ) ) )
                & ( X59 = select2(X4,X36,ownerFrame) )
                & ( X58 = typeof(X36) ) )
          | ~ ! [X6: $int] : ( shr(X6,0) = X6 )
          | ~ ! [X36: $int,X4: $int] :
              ? [X44: $int] :
                ( ( X44 = typeof(X36) )
                & ( ~ ( ( X36 = nullObject )
                      | ( 'IsHeap'(X4) != true_1 )
                      | ( x(X44,'System_Array') != true_1 ) )
                 => ~ ( ( select2(X4,X36,localinv) != X44 )
                      | ( select2(X4,X36,inv) != X44 ) ) ) )
          | ( 'AsInterface'('System_IComparable_1___System_String') != 'System_IComparable_1___System_String' )
          | ~ ! [X6: $int] :
                ( ~ ( $less(int_18446744073709551615,X6)
                    | $less(X6,0) )
              <=> ( 'InRange'(X6,'System_UInt64') = true_1 ) )
          | ~ $less(int_9223372036854775807,int_18446744073709551615)
          | ~ ! [X7: $int,X11: $int,X10: $int,X9: $int] : ( 'ArrayIndexInvY'('ArrayIndex'(X9,X10,X7,X11)) = X11 )
          | ~ ! [X73: $int,X7: $int] : ( 'Unbox'('Box'(X7,X73)) = X7 )
          | ( 'AsMutable'('Factorial') != 'Factorial' )
          | ( 'IsMemberlessType'('System_ICloneable') != true_1 )
          | ~ ! [X3: $int,X36: $int] :
                ( ( ( x(typeof(X36),X3) = true_1 )
                  | ( X36 = nullObject ) )
              <=> ( 'Is'(X36,X3) = true_1 ) )
          | ( x('System_IComparable','System_IComparable') != true_1 )
          | ~ ! [X12: $int] :
                ( ( 'IsHeap'(X12) = true_1 )
               => ( select2(X12,stringLiteral0,allocated) = true_1 ) )
          | ( 'IncludeInMainFrameCondition'(allocated) != true_1 )
          | ~ $less(int_m2147483648,$sum(0,$uminus(100000)))
          | ( x('System_Collections_IEnumerable','System_Object') != true_1 )
          | ~ ! [X3: $int,X14: $int,X6: $int,X12: $int,X9: $int] :
                ( ~ ( ( x(typeof(X9),'NonNullRefArray'(X3,X14)) != true_1 )
                    | ( 'IsHeap'(X12) != true_1 ) )
               => ( 'RefArrayGet'(select2(X12,X9,elements),X6) != nullObject ) )
          | ~ $less(int_2147483647,int_4294967295)
          | ~ ! [X11: $int,X7: $int,X47: $int] :
                ( ( X47 = true_1 )
               => ( 'IfThenElse'(X47,X7,X11) = X7 ) )
          | ~ ! [X3: $int,X25: $int,X14: $int] :
                ( ( x(X25,X3) = true_1 )
               => ( x('NonNullRefArray'(X25,X14),'NonNullRefArray'(X3,X14)) = true_1 ) )
          | ~ ! [X3: $int,X36: $int] :
                ( ( 'Is'(X36,X3) != true_1 )
               => ( 'As'(X36,X3) = nullObject ) )
          | ( x('System_String','System_String') != true_1 )
          | ( x('System_String','System_Collections_Generic_IEnumerable_1___System_Char') != true_1 )
          | ~ ! [X21: $int,X23: $int,X22: $int] :
              ? [X24: $int] :
                ( ( ( 'NonNullRefArrayRaw'(X21,X22,X23) = true_1 )
                 => ~ ( ( x(X24,'System_Array') != true_1 )
                      | ( 'Rank'(X21) != X23 )
                      | ( x(X22,'ElementType'(X24)) != true_1 ) ) )
                & ( X24 = typeof(X21) ) )
          | ~ ! [X3: $int,X5: $int,X14: $int] :
              ? [X26: $int] :
                ( ( ( x(X3,'RefArray'(X5,X14)) = true_1 )
                 => ~ ( ( x(X26,X5) != true_1 )
                      | ( X3 = X5 )
                      | ( X3 != 'RefArray'(X26,X14) ) ) )
                & ( X26 = 'ElementType'(X3) ) )
          | ~ ! [X6: $int,X9: $int] : ( 'UBound'(X9,X6) = $sum('DimLength'(X9,X6),$uminus(1)) )
          | ~ ! [X11: $int,X7: $int] :
              ? [X83: $int] :
                ( ( X83 = or_1(X7,X11) )
                & ( ~ ( $less(X7,0)
                      | $less(X11,0) )
                 => ~ ( $less(X83,0)
                      | $less($sum(X7,X11),X83) ) ) )
          | ( x('System_ICloneable','System_Object') != true_1 )
          | ~ ! [X3: $int,X16: $int,X14: $int] :
                ( ( x(X3,'NonNullRefArray'(X16,X14)) = true_1 )
               => ( 'ArrayCategory'(X3) = 'ArrayCategoryNonNullRef' ) )
          | ~ ! [X73: $int] :
                ( ( 'IsValueType'('UnboxedType'(X73)) = true_1 )
               => ! [X7: $int,X12: $int] :
                  ? [X74: $int] :
                    ( ? [X75: $int] :
                        ( ( X75 = typeof(X74) )
                        & ( ( 'IsHeap'(X12) = true_1 )
                         => ~ ( ( select2(X12,X74,localinv) != X75 )
                              | ( select2(X12,X74,inv) != X75 ) ) ) )
                    & ( X74 = 'Box'(X7,X73) ) ) )
          | ~ ! [X90: $int,X91: $int] : ( 'Factorial_recursiveFac_System_Int32'(X90,X91) = 'Factorial_recursiveFac_System_Int32_1'(X91) )
          | ~ ! [X9: $int,X10: $int,X47: $int] :
                ( ~ ( ~ $less(X9,X47)
                    | ( x_2(X9,X10) != x_2(X47,X10) )
                    | $less(X10,2) )
               => ~ $less(X47,$sum(X9,X10)) )
          | ~ ! [X3: $int] :
                ( ( 'IsValueType'(X3) = true_1 )
               => ~ ( ~ ! [X25: $int] :
                          ( ( x(X3,X25) = true_1 )
                         => ( X3 = X25 ) )
                    | ~ ! [X25: $int] :
                          ( ( x(X25,X3) = true_1 )
                         => ( X3 = X25 ) ) ) )
          | ( 'IsValueType'('System_UIntPtr') != true_1 )
          | ( 'AsInterface'('System_Collections_IEnumerable') != 'System_Collections_IEnumerable' )
          | ~ ! [X7: $int,X73: $int] :
              ? [X76: $int] :
                ( ( X76 = 'Box'(X7,X73) )
                & ( ~ ( ( x('UnboxedType'(X76),'System_Object') != true_1 )
                      | ( X76 != X73 ) )
                 => ( X7 = X73 ) ) )
          | ~ ! [X9: $int,X2: $int,X47: $int] :
                ( ~ ( ( 'StringEquals'(X9,X47) != true_1 )
                    | ( 'StringEquals'(X47,X2) != true_1 ) )
               => ( 'StringEquals'(X9,X2) = true_1 ) )
          | ~ ! [X5: $int,X14: $int,X3: $int] :
              ? [X28: $int] :
                ( ( X28 = 'ValueArray'(X5,X14) )
                & ( ( x(X3,X28) = true_1 )
                 => ( X3 = X28 ) ) )
          | ( 'IsValueType'('System_UInt16') != true_1 )
          | ( x('System_ICloneable','System_ICloneable') != true_1 )
          | ~ ! [X39: $int,X36: $int,X3: $int,X4: $int] :
                ( ~ ( ( 'IsHeap'(X4) != true_1 )
                    | ~ ( ( $true
                        <=> ( select2(X4,'BeingConstructed','NonNullFieldsAreInitialized') = true_1 ) )
                        | ( X36 != 'BeingConstructed' ) )
                    | ( X36 = nullObject ) )
               => ( select2(X4,X36,'AsNonNullRefField'(X39,X3)) != nullObject ) )
          | ~ ! [X7: $int,X11: $int] :
              ? [X81: $int] :
                ( ( X81 = x_2(X7,X11) )
                & ( ~ ( $less(0,X7)
                      | ~ $less(X11,0) )
                 => ~ ( $less(0,X81)
                      | ~ $less(X11,X81) ) ) )
          | ( 'IsValueType'('System_IntPtr') != true_1 )
          | ~ ! [X16: $int,X3: $int,X14: $int] :
                ( ( x(X3,'IntArray'(X16,X14)) = true_1 )
               => ( 'ArrayCategory'(X3) = 'ArrayCategoryInt' ) )
          | ( x('System_IConvertible','System_IConvertible') != true_1 )
          | ( 'AsInterface'('System_Collections_Generic_IEnumerable_1___System_Char') != 'System_Collections_Generic_IEnumerable_1___System_Char' )
          | ( 'IncludeInMainFrameCondition'(ownerRef) != true_1 )
          | ~ ! [X6: $int] :
                ( ~ ( $less(X6,$sum(0,$uminus(32768)))
                    | ~ $less(X6,32768) )
              <=> ( 'InRange'(X6,'System_Int16') = true_1 ) )
          | ~ ! [X36: $int,X4: $int,X39: $int] :
                ( ~ ( ( select2(X4,X36,allocated) != true_1 )
                    | ( 'IsHeap'(X4) != true_1 ) )
               => ( select2(X4,select2(X4,X36,X39),allocated) = true_1 ) )
          | ( 'AsDirectSubClass'('System_String',X0) != 'System_String' )
          | ( 'DeclType'(elements) != 'System_Object' )
          | ( 'IncludeInMainFrameCondition'(localinv) = true_1 )
          | ( 'IsNotNull'(stringLiteral0,'System_String') != true_1 )
          | ~ ! [X69: $int,X71: $int,X68: $int,X70: $int] :
              ? [X72: $int] :
                ( ~ ( ( 'UnboxedType'(X72) != X69 )
                    | ( 'Box'(X68,X72) != X72 ) )
                & ( X72 = 'BoxFunc'(X68,X69,X70,X71) ) )
          | ~ ! [X7: $int,X11: $int] :
              ? [X78: $int] :
                ( ( ~ ( ~ $less(0,X11)
                      | $less(X7,0) )
                 => ~ ( ~ $less(X78,X11)
                      | $less(X78,0) ) )
                & ( X78 = x_2(X7,X11) ) )
          | ~ ! [X89: $int] :
                ( ( x(X89,'System_String') = true_1 )
               => ( X89 = 'System_String' ) )
          | ( X0 != 'System_Object' )
          | ~ ! [X11: $int,X7: $int] :
              ? [X82: $int] :
                ( ( ~ ( $less(X11,0)
                      | $less(X82,0) )
                 => ( x_2(X82,X11) = x_2(X7,X11) ) )
                & ( $sum(X7,$uminus(X11)) = X82 ) )
          | ~ ! [X5: $int,X43: $int,X42: $int] :
                ( ( x(X43,'AsDirectSubClass'(X42,X5)) = true_1 )
               => ( 'OneClassDown'(X43,X5) = X42 ) )
          | ~ ! [X25: $int,X3: $int,X14: $int] :
                ( ( x(X25,X3) = true_1 )
               => ( x('RefArray'(X25,X14),'RefArray'(X3,X14)) = true_1 ) )
          | ~ ! [X9: $int,X3: $int,X14: $int] :
                ( ~ ( ( x(typeof(X9),'RefArray'(X3,X14)) != true_1 )
                    | ( X9 = nullObject ) )
               => ( 'Rank'(X9) = X14 ) )
          | ~ ! [X37: $int,X36: $int] : ( typeof('ElementProxy'(X36,X37)) = 'System_Object' )
          | ( x('System_String','System_IComparable_1___System_String') != true_1 )
          | ~ ! [X6: $int] :
                ( ( 'InRange'(X6,'System_Int64') = true_1 )
              <=> ~ ( $less(int_9223372036854775807,X6)
                    | $less(X6,int_m9223372036854775808) ) )
          | ~ $less(100000,int_2147483647)
          | ~ ! [X9: $int,X11: $int,X7: $int,X10: $int] : ( 'ArrayIndexInvX'('ArrayIndex'(X9,X10,X7,X11)) = X7 )
          | ~ ! [X36: $int,X3: $int] :
                ( ( 'Is'(X36,X3) = true_1 )
               => ( 'As'(X36,X3) = X36 ) )
          | ~ ! [X11: $int,X7: $int] :
              ? [X79: $int] :
                ( ( ~ ( ~ $less(X11,0)
                      | $less(X7,0) )
                 => ~ ( ~ $less(X79,$sum(0,$uminus(X11)))
                      | $less(X79,0) ) )
                & ( X79 = x_2(X7,X11) ) )
          | ~ ! [X9: $int,X3: $int,X14: $int] :
                ( ~ ( ( X9 = nullObject )
                    | ( x(typeof(X9),'ValueArray'(X3,X14)) != true_1 ) )
               => ( 'Rank'(X9) = X14 ) )
          | ( 'IsValueType'('System_Boolean') != true_1 )
          | ( 'IsStaticField'(exposeVersion) = true_1 )
          | ~ ! [X8: $int,X6: $int] :
                ( ~ $less(X8,1)
               => ( shl(X6,X8) = $product(shl(X6,$sum(X8,$uminus(1))),2) ) )
          | ( x('System_IEquatable_1___System_String','System_Object') != true_1 )
          | ~ ! [X2: $int,X4: $int] :
                ( ( 'IsHeap'(X4) = true_1 )
               => ( select2(X4,'ClassRepr'(X2),allocated) = true_1 ) )
          | ~ ! [X3: $int] : ( 'IsNotNull'('TypeObject'(X3),'System_Type') = true_1 )
          | ~ ! [X3: $int] : ( x(typeof('ClassRepr'(X3)),'System_Object') != true_1 )
          | ~ ! [X16: $int,X14: $int,X3: $int] :
                ( ( x(X3,'ValueArray'(X16,X14)) = true_1 )
               => ( 'ArrayCategory'(X3) = 'ArrayCategoryValue' ) )
          | ~ ! [X3: $int,X5: $int,X14: $int] :
              ? [X27: $int] :
                ( ( X27 = 'ElementType'(X3) )
                & ( ( x(X3,'NonNullRefArray'(X5,X14)) = true_1 )
                 => ~ ( ( X3 != 'NonNullRefArray'(X27,X14) )
                      | ( x(X27,X5) != true_1 )
                      | ( X3 = X5 ) ) ) )
          | ( x('System_IEquatable_1___System_String','System_IEquatable_1___System_String') != true_1 )
          | ~ ! [X9: $int,X6: $int] : ~ $less('DimLength'(X9,X6),0)
          | ~ ! [X7: $int,X11: $int] :
              ? [X80: $int] :
                ( ( ~ ( $less(0,X7)
                      | ~ $less(0,X11) )
                 => ~ ( $less(0,X80)
                      | ~ $less($sum(0,$uminus(X11)),X80) ) )
                & ( X80 = x_2(X7,X11) ) )
          | ( x('System_Collections_Generic_IEnumerable_1___System_Char','System_Collections_Generic_IEnumerable_1___System_Char') != true_1 )
          | ( 'IncludedInModifiesStar'(elements) != true_1 )
          | ~ ! [X6: $int] :
                ( ( 'InRange'(X6,'System_Byte') = true_1 )
              <=> ~ ( ~ $less(X6,256)
                    | $less(X6,0) ) )
          | ~ ! [X7: $int,X11: $int] :
                ( ~ ( $less(X11,0)
                    | $less(X7,0) )
               => ( x_2($sum(X11,X7),X11) = x_2(X7,X11) ) )
          | ( 'IncludeInMainFrameCondition'('FirstConsistentOwner') = true_1 )
          | ( 'IsValueType'('System_Char') != true_1 )
          | ( 'IsMemberlessType'('System_IEquatable_1___System_String') != true_1 )
          | ~ ! [X7: $int,X8: $int,X6: $int,X5: $int] :
                ( ( X6 != X8 )
               => ( 'IntArrayGet'('IntArraySet'(X5,X6,X7),X8) = 'IntArrayGet'(X5,X8) ) )
          | ( x('System_String','System_IConvertible') != true_1 )
          | ( 'IsValueType'('System_Int64') != true_1 )
          | ( 'IsStaticField'(localinv) = true_1 )
          | ~ ! [X4: $int,X38: $int,X39: $int] :
                ( ( 'IsAllocated'(X4,X38) = true_1 )
               => ( 'IsAllocated'(X4,'StructGet'(X38,X39)) = true_1 ) )
          | ~ ! [X9: $int,X12: $int] :
                ( ~ ( ( x(typeof(X9),'System_Array') != true_1 )
                    | ( 'IsHeap'(X12) != true_1 )
                    | ( 'IsAllocated'(X12,X9) != true_1 ) )
               => ( true_1 = 'IsAllocated'(X12,'ElementProxy'(X9,$sum(0,$uminus(1)))) ) )
          | ~ ! [X5: $int,X14: $int] : ( 'ElementType'('RefArray'(X5,X14)) = X5 )
          | ~ ! [X37: $int,X36: $int] : ( typeof('ElementProxyStruct'(X36,X37)) = 'System_Object' )
          | ( x('System_String','System_IComparable') != true_1 )
          | ~ ! [X9: $int] :
              ? [X15: $int] :
                ( ( X15 = 'Length'(X9) )
                & ~ ( $less(X15,0)
                    | $less(int_2147483647,X15) ) )
          | ( 'IsValueType'('System_UInt32') != true_1 )
          | ( 'IsMemberlessType'('System_IComparable_1___System_String') != true_1 )
          | ~ ! [X14: $int,X3: $int] :
              ? [X17: $int] :
                ( ~ ( ( x(X17,X17) != true_1 )
                    | ( x(X17,'System_Array') != true_1 ) )
                & ( X17 = 'ValueArray'(X3,X14) ) )
          | ~ ! [X4: $int,X39: $int,X36: $int,X6: $int] :
              ? [X56: $int] :
                ( ? [X57: $int] :
                    ( ( X57 = 'ElementProxy'(X56,X6) )
                    & ( ~ ( ( 'IsHeap'(X4) != true_1 )
                          | ( X56 = nullObject ) )
                     => ~ ( ( select2(X4,X57,ownerFrame) != select2(X4,X36,ownerFrame) )
                          | ( select2(X4,X57,ownerRef) != select2(X4,X36,ownerRef) ) ) ) )
                & ( X56 = select2(X4,X36,'AsElementsPeerField'(X39,X6)) ) )
          | ( 'AsInterface'('System_IComparable') != 'System_IComparable' )
          | ( $sum(int_m9223372036854775808,1) != $sum(0,$uminus(int_9223372036854775807)) )
          | ~ ! [X6: $int] : ( shl(X6,0) = X6 )
          | ( X1 != 'System_Object' )
          | ~ ! [X7: $int,X11: $int] :
                ( ~ ( $less(X7,0)
                    | $less(X11,0) )
               => ( x_2($sum(X7,X11),X11) = x_2(X7,X11) ) )
          | ~ ! [X3: $int] : ( 'TypeName'('TypeObject'(X3)) = X3 )
          | ( 'IncludedInModifiesStar'(exposeVersion) != true_1 )
          | ~ ! [X6: $int,X4: $int,X3: $int,X39: $int,X36: $int] :
              ? [X54: $int] :
                ( ? [X55: $int] :
                    ( ( ~ ( ( X54 = nullObject )
                          | ( 'IsHeap'(X4) != true_1 ) )
                     => ~ ( ( select2(X4,X55,ownerFrame) != X3 )
                          | ( select2(X4,X55,ownerRef) != X36 ) ) )
                    & ( X55 = 'ElementProxy'(X54,X6) ) )
                & ( X54 = select2(X4,X36,'AsElementsRepField'(X39,X3,X6)) ) )
          | ( 'AsImmutable'('System_String') != 'System_String' )
          | ( 'IsMemberlessType'('System_Collections_IEnumerable') != true_1 )
          | ~ ! [X9: $int,X6: $int] : ( 'LBound'(X9,X6) = 0 )
          | ~ ! [X9: $int] : ~ $less('Rank'(X9),1)
          | ( 'IncludeInMainFrameCondition'(exposeVersion) != true_1 )
          | ~ ! [X14: $int,X5: $int,X3: $int] :
              ? [X31: $int] :
                ( ( X31 = 'ElementType'(X3) )
                & ( ( x('NonNullRefArray'(X5,X14),X3) = true_1 )
                 => ( ( x('System_Array',X3) = true_1 )
                    | ~ ( ( X3 != 'NonNullRefArray'(X31,X14) )
                        | ( x(X5,X31) != true_1 ) ) ) ) )
          | ~ ! [X9: $int] :
                ( ( 'Rank'(X9) = 1 )
               => ( 'DimLength'(X9,0) = 'Length'(X9) ) )
          | ( 'IsValueType'('System_UInt64') != true_1 )
          | ~ ! [X14: $int,X5: $int,X3: $int] :
              ? [X29: $int] :
                ( ( ( x(X3,X29) = true_1 )
                 => ( X3 = X29 ) )
                & ( X29 = 'IntArray'(X5,X14) ) )
          | ( 'IncludeInMainFrameCondition'(inv) = true_1 )
          | ~ ! [X4: $int,X36: $int] :
              ? [X63: $int] :
                ( ( X63 = select2(X4,X36,'FirstConsistentOwner') )
                & ? [X64: $int,X65: $int,X67: $int,X66: $int] :
                    ( ( X66 = select2(X4,X36,ownerFrame) )
                    & ( X65 = select2(X4,X63,ownerRef) )
                    & ( X67 = select2(X4,X36,ownerRef) )
                    & ( X64 = select2(X4,X63,ownerFrame) )
                    & ( ~ ( ( select2(X4,X67,localinv) = 'BaseClass'(X66) )
                          | ( 'IsHeap'(X4) != true_1 )
                          | ( x(select2(X4,X67,inv),X66) != true_1 )
                          | ~ ( ( select2(X4,X36,allocated) = true_1 )
                            <=> $true )
                          | ( X36 = nullObject )
                          | ( X66 = 'PeerGroupPlaceholder' ) )
                     => ~ ( ~ ( ( select2(X4,X65,localinv) = 'BaseClass'(X64) )
                              | ( X64 = 'PeerGroupPlaceholder' )
                              | ( x(select2(X4,X65,inv),X64) != true_1 ) )
                          | ~ ( ( select2(X4,X63,allocated) = true_1 )
                            <=> $true )
                          | ( X63 = nullObject ) ) ) ) )
          | ( 'IsValueType'('System_Int32') != true_1 )
          | ~ ! [X36: $int,X39: $int,X3: $int,X4: $int] :
              ? [X52: $int] :
                ( ( ~ ( ( 'IsHeap'(X4) != true_1 )
                      | ( X52 = nullObject ) )
                 => ~ ( ( select2(X4,X52,ownerFrame) != X3 )
                      | ( select2(X4,X52,ownerRef) != X36 ) ) )
                & ( X52 = select2(X4,X36,'AsRepField'(X39,X3)) ) )
          | ~ ! [X25: $int,X3: $int] :
                ( ( x(X25,'AsImmutable'(X3)) = true_1 )
               => ~ ( ( 'AsImmutable'(X25) != X25 )
                    | ( 'IsImmutable'(X25) != true_1 ) ) )
          | ~ ! [X4: $int,X36: $int,X3: $int,X39: $int] :
                ( ( 'IsHeap'(X4) = true_1 )
               => ( 'Is'(select2(X4,X36,'AsRefField'(X39,X3)),X3) = true_1 ) )
          | ( x('System_Array','System_Object') != true_1 )
          | ~ ! [X47: $int,X4: $int,X9: $int] :
                ( ~ ( ( X9 = nullObject )
                    | ( X47 = nullObject )
                    | ( 'System_String_Equals_System_String_System_String'(X4,X9,X47) != true_1 ) )
               => ( 'System_String_IsInterned_System_String_notnull'(X4,X9) = 'System_String_IsInterned_System_String_notnull'(X4,X47) ) )
          | ~ ! [X3: $int,X39: $int] :
                ( ( 'AsNonNullRefField'(X39,X3) = X39 )
               => ( 'AsRefField'(X39,X3) = X39 ) )
          | ( 'DeclType'(exposeVersion) != 'System_Object' )
          | ~ ! [X7: $int,X5: $int,X6: $int] : ( 'IntArrayGet'('IntArraySet'(X5,X6,X7),X6) = X7 )
          | ( 'IsValueType'('System_SByte') != true_1 )
          | ~ ! [X5: $int,X6: $int,X7: $int] : ( 'RefArrayGet'('RefArraySet'(X5,X6,X7),X6) = X7 )
          | ( x('System_IComparable_1___System_String','System_Object') != true_1 )
          | ~ ! [X16: $int,X3: $int,X14: $int] :
                ( ( x(X3,'RefArray'(X16,X14)) = true_1 )
               => ( 'ArrayCategory'(X3) = 'ArrayCategoryRef' ) )
          | ~ ! [X39: $int,X38: $int,X40: $int,X7: $int] :
                ( ( X39 != X40 )
               => ( 'StructGet'('StructSet'(X38,X39,X7),X40) = 'StructGet'(X38,X40) ) )
          | ~ ! [X3: $int,X5: $int,X14: $int] :
              ? [X30: $int] :
                ( ( X30 = 'ElementType'(X3) )
                & ( ( x('RefArray'(X5,X14),X3) = true_1 )
                 => ( ~ ( ( X3 != 'RefArray'(X30,X14) )
                        | ( x(X5,X30) != true_1 ) )
                    | ( x('System_Array',X3) = true_1 ) ) ) )
          | ~ ! [X6: $int] :
                ( ~ ( $less(X6,0)
                    | ~ $less(X6,65536) )
              <=> ( 'InRange'(X6,'System_UInt16') = true_1 ) )
          | ~ ! [X2: $int] : ( 'ClassReprInv'('ClassRepr'(X2)) = X2 )
          | ~ ! [X88: $int,X87: $int] :
                ( ~ ( ( x(select2(X88,X87,inv),'Factorial') != true_1 )
                    | ( 'IsHeap'(X88) != true_1 )
                    | ( select2(X88,X87,localinv) = X1 ) )
               => $true )
          | ( 'IncludeInMainFrameCondition'(elements) != true_1 )
          | ( x('System_IComparable','System_Object') != true_1 )
          | ~ ! [X36: $int,X3: $int] :
                ( ~ ( ( X36 = nullObject )
                    | ( x(typeof(X36),'AsImmutable'(X3)) != true_1 )
                    | ( X36 = 'BeingConstructed' ) )
               => ! [X4: $int] :
                  ? [X50: $int] :
                    ( ( X50 = typeof(X36) )
                    & ( ( 'IsHeap'(X4) = true_1 )
                     => ~ ( ( select2(X4,X36,localinv) != X50 )
                          | ( 'AsOwner'(X36,select2(X4,X36,ownerRef)) != X36 )
                          | ( select2(X4,X36,ownerFrame) != 'PeerGroupPlaceholder' )
                          | ( select2(X4,X36,inv) != X50 )
                          | ~ ! [X51: $int] :
                                ( ( 'AsOwner'(X36,select2(X4,X51,ownerRef)) = X36 )
                               => ( ( select2(X4,X51,ownerFrame) != 'PeerGroupPlaceholder' )
                                  | ( X51 = X36 ) ) ) ) ) ) )
          | ~ ( ( 'ArrayCategoryValue' != 'System_Int32' )
              & ( allocated != 'FirstConsistentOwner' )
              & ( 'ArrayCategoryValue' != 'System_IComparable_1___System_String' )
              & ( 'System_Int16' != 'System_UInt32' )
              & ( 'System_SByte' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( elements != 'System_Char' )
              & ( elements != 'System_IntPtr' )
              & ( 'System_Array' != 'System_Char' )
              & ( localinv != 'FirstConsistentOwner' )
              & ( 'ArrayCategoryValue' != 'System_UInt32' )
              & ( sharingMode != 'System_Collections_IEnumerable' )
              & ( 'System_Array' != 'System_Int64' )
              & ( exposeVersion != 'System_Byte' )
              & ( 'System_IConvertible' != 'System_IEquatable_1___System_String' )
              & ( 'NonNullFieldsAreInitialized' != 'System_IntPtr' )
              & ( exposeVersion != 'System_Int16' )
              & ( inv != 'System_SByte' )
              & ( ownerRef != 'Factorial' )
              & ( ownerRef != 'System_UInt16' )
              & ( allocated != stringLiteral0 )
              & ( 'System_UInt32' != 'System_IConvertible' )
              & ( 'SharingMode_LockProtected' != 'FirstConsistentOwner' )
              & ( localinv != 'ArrayCategoryRef' )
              & ( 'System_SByte' != 'System_IComparable' )
              & ( 'SharingMode_Unshared' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'ArrayCategoryValue' != 'System_Int64' )
              & ( ownerRef != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryValue' != 'System_Int16' )
              & ( 'System_Boolean' != 'System_Int32' )
              & ( 'FirstConsistentOwner' != 'System_ICloneable' )
              & ( localinv != 'ArrayCategoryInt' )
              & ( exposeVersion != 'System_Boolean' )
              & ( 'System_Object' != 'System_Byte' )
              & ( 'System_Type' != 'System_IComparable_1___System_String' )
              & ( 'System_IntPtr' != 'System_IComparable' )
              & ( 'SharingMode_Unshared' != 'System_Int16' )
              & ( 'SharingMode_Unshared' != 'System_Object' )
              & ( 'SharingMode_LockProtected' != 'System_String' )
              & ( elements != 'System_Object' )
              & ( 'System_IComparable_1___System_String' != 'Factorial' )
              & ( inv != 'Factorial' )
              & ( 'System_UInt16' != 'System_Int64' )
              & ( ownerFrame != 'System_IntPtr' )
              & ( inv != 'System_Int64' )
              & ( 'ArrayCategoryInt' != 'System_UInt16' )
              & ( sharingMode != 'System_Int64' )
              & ( 'NonNullFieldsAreInitialized' != 'System_Int32' )
              & ( allocated != 'System_Int64' )
              & ( 'System_IntPtr' != 'System_ICloneable' )
              & ( inv != 'NonNullFieldsAreInitialized' )
              & ( allocated != 'System_Array' )
              & ( 'System_Char' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( sharingMode != 'System_IComparable' )
              & ( 'System_Type' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( sharingMode != 'SharingMode_LockProtected' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Char' )
              & ( 'System_Type' != 'System_Int64' )
              & ( 'System_Boolean' != 'System_Type' )
              & ( 'ArrayCategoryInt' != stringLiteral0 )
              & ( 'ArrayCategoryNonNullRef' != 'System_UInt16' )
              & ( 'System_UInt16' != 'System_IEquatable_1___System_String' )
              & ( 'FirstConsistentOwner' != stringLiteral0 )
              & ( 'SharingMode_Unshared' != 'System_SByte' )
              & ( elements != 'System_UInt32' )
              & ( ownerFrame != stringLiteral0 )
              & ( 'PeerGroupPlaceholder' != 'System_Array' )
              & ( localinv != 'PeerGroupPlaceholder' )
              & ( 'System_Object' != 'System_IComparable' )
              & ( 'ArrayCategoryRef' != 'System_Byte' )
              & ( 'SharingMode_Unshared' != 'System_String' )
              & ( exposeVersion != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Boolean' != 'System_IEquatable_1___System_String' )
              & ( 'System_Int16' != 'System_IComparable' )
              & ( 'System_Int16' != 'System_IntPtr' )
              & ( elements != 'System_Int32' )
              & ( 'System_String' != 'System_UInt16' )
              & ( allocated != 'System_Object' )
              & ( 'System_Boolean' != stringLiteral0 )
              & ( 'ArrayCategoryNonNullRef' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_SByte' != 'System_Collections_IEnumerable' )
              & ( 'SharingMode_LockProtected' != 'System_Object' )
              & ( localinv != 'System_UInt32' )
              & ( 'ArrayCategoryRef' != 'System_UIntPtr' )
              & ( 'SharingMode_Unshared' != 'System_Byte' )
              & ( 'NonNullFieldsAreInitialized' != 'System_IComparable' )
              & ( 'NonNullFieldsAreInitialized' != 'System_UInt64' )
              & ( 'System_Int32' != 'System_IComparable' )
              & ( 'System_Boolean' != 'System_Byte' )
              & ( sharingMode != 'System_IConvertible' )
              & ( 'SharingMode_Unshared' != ownerFrame )
              & ( exposeVersion != 'System_ICloneable' )
              & ( 'ArrayCategoryRef' != 'System_Char' )
              & ( 'System_IComparable' != 'Factorial' )
              & ( allocated != ownerFrame )
              & ( ownerFrame != 'System_Type' )
              & ( 'System_Type' != 'System_Char' )
              & ( 'System_Boolean' != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryInt' != 'System_SByte' )
              & ( 'NonNullFieldsAreInitialized' != 'System_IConvertible' )
              & ( 'ArrayCategoryInt' != 'System_Byte' )
              & ( 'ArrayCategoryValue' != 'System_UInt16' )
              & ( elements != 'ArrayCategoryInt' )
              & ( 'NonNullFieldsAreInitialized' != 'System_Char' )
              & ( 'System_Byte' != 'System_ICloneable' )
              & ( localinv != 'ArrayCategoryNonNullRef' )
              & ( 'ArrayCategoryRef' != 'NonNullFieldsAreInitialized' )
              & ( 'System_UInt16' != stringLiteral0 )
              & ( ownerRef != 'System_Char' )
              & ( 'System_SByte' != 'System_Int64' )
              & ( allocated != 'System_SByte' )
              & ( 'System_Byte' != 'System_IComparable' )
              & ( elements != 'NonNullFieldsAreInitialized' )
              & ( ownerRef != 'System_SByte' )
              & ( 'SharingMode_LockProtected' != 'System_ICloneable' )
              & ( sharingMode != 'System_UInt64' )
              & ( 'System_Boolean' != 'System_IConvertible' )
              & ( 'System_Boolean' != 'System_UInt64' )
              & ( 'System_Array' != 'System_Int32' )
              & ( allocated != 'SharingMode_LockProtected' )
              & ( 'PeerGroupPlaceholder' != 'System_Int16' )
              & ( 'System_Int64' != 'Factorial' )
              & ( 'ArrayCategoryRef' != 'System_Int16' )
              & ( exposeVersion != 'System_SByte' )
              & ( 'System_String' != 'System_IComparable' )
              & ( 'NonNullFieldsAreInitialized' != 'FirstConsistentOwner' )
              & ( ownerFrame != 'ArrayCategoryRef' )
              & ( inv != 'PeerGroupPlaceholder' )
              & ( sharingMode != 'System_SByte' )
              & ( sharingMode != 'System_Char' )
              & ( 'ArrayCategoryValue' != 'System_IEquatable_1___System_String' )
              & ( sharingMode != 'ArrayCategoryInt' )
              & ( 'System_Int32' != 'System_IComparable_1___System_String' )
              & ( 'System_Type' != stringLiteral0 )
              & ( 'PeerGroupPlaceholder' != 'System_UInt64' )
              & ( 'ArrayCategoryValue' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Boolean' != 'System_Int16' )
              & ( localinv != 'Factorial' )
              & ( 'System_Collections_IEnumerable' != stringLiteral0 )
              & ( 'ArrayCategoryInt' != 'ArrayCategoryNonNullRef' )
              & ( elements != exposeVersion )
              & ( 'ArrayCategoryValue' != 'Factorial' )
              & ( inv != 'System_UInt16' )
              & ( 'System_Int32' != 'System_Int64' )
              & ( 'System_Int64' != stringLiteral0 )
              & ( 'SharingMode_LockProtected' != 'System_Collections_IEnumerable' )
              & ( 'System_Int16' != 'System_Int64' )
              & ( elements != 'SharingMode_Unshared' )
              & ( 'PeerGroupPlaceholder' != 'System_Int32' )
              & ( inv != 'System_Type' )
              & ( ownerRef != 'System_UInt64' )
              & ( 'ArrayCategoryInt' != 'NonNullFieldsAreInitialized' )
              & ( exposeVersion != 'ArrayCategoryNonNullRef' )
              & ( localinv != ownerFrame )
              & ( 'SharingMode_Unshared' != 'System_IConvertible' )
              & ( sharingMode != 'System_Array' )
              & ( 'System_Int16' != 'System_Collections_IEnumerable' )
              & ( 'SharingMode_LockProtected' != 'System_IComparable_1___System_String' )
              & ( 'PeerGroupPlaceholder' != 'System_Collections_IEnumerable' )
              & ( localinv != 'SharingMode_Unshared' )
              & ( 'System_Object' != 'System_IConvertible' )
              & ( localinv != 'System_String' )
              & ( ownerRef != 'System_UInt32' )
              & ( exposeVersion != stringLiteral0 )
              & ( 'System_Int16' != 'Factorial' )
              & ( 'System_Byte' != 'System_UIntPtr' )
              & ( 'NonNullFieldsAreInitialized' != 'System_SByte' )
              & ( 'System_Char' != 'Factorial' )
              & ( allocated != 'PeerGroupPlaceholder' )
              & ( 'ArrayCategoryRef' != 'System_IComparable_1___System_String' )
              & ( 'System_IComparable_1___System_String' != 'System_IComparable' )
              & ( inv != 'System_UInt64' )
              & ( 'SharingMode_LockProtected' != 'System_IEquatable_1___System_String' )
              & ( 'ArrayCategoryValue' != 'System_Collections_IEnumerable' )
              & ( 'System_UInt32' != 'System_IntPtr' )
              & ( elements != 'System_IComparable_1___System_String' )
              & ( allocated != 'System_UInt64' )
              & ( 'System_Char' != 'System_IComparable_1___System_String' )
              & ( inv != 'System_Array' )
              & ( 'System_Array' != 'System_Int16' )
              & ( sharingMode != 'System_Int32' )
              & ( 'System_UIntPtr' != 'System_IConvertible' )
              & ( 'System_Boolean' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Char' != stringLiteral0 )
              & ( elements != 'System_IEquatable_1___System_String' )
              & ( 'System_Byte' != 'System_UInt32' )
              & ( localinv != 'System_Array' )
              & ( localinv != sharingMode )
              & ( 'FirstConsistentOwner' != 'System_IntPtr' )
              & ( 'SharingMode_Unshared' != 'System_UInt32' )
              & ( 'System_Int64' != 'System_UIntPtr' )
              & ( inv != 'ArrayCategoryInt' )
              & ( exposeVersion != 'System_Array' )
              & ( 'ArrayCategoryNonNullRef' != 'System_IComparable' )
              & ( 'System_Int64' != 'System_IntPtr' )
              & ( allocated != 'System_ICloneable' )
              & ( ownerRef != 'ArrayCategoryRef' )
              & ( 'System_Int16' != 'System_IEquatable_1___System_String' )
              & ( localinv != 'System_UIntPtr' )
              & ( 'ArrayCategoryValue' != 'FirstConsistentOwner' )
              & ( 'ArrayCategoryValue' != 'System_SByte' )
              & ( sharingMode != 'System_IComparable_1___System_String' )
              & ( 'System_Int32' != 'System_ICloneable' )
              & ( 'SharingMode_Unshared' != 'System_IComparable_1___System_String' )
              & ( 'SharingMode_LockProtected' != 'ArrayCategoryNonNullRef' )
              & ( 'System_UInt16' != 'System_ICloneable' )
              & ( 'PeerGroupPlaceholder' != 'FirstConsistentOwner' )
              & ( 'System_IComparable_1___System_String' != 'System_Collections_IEnumerable' )
              & ( 'System_Char' != 'System_IConvertible' )
              & ( ownerFrame != 'Factorial' )
              & ( exposeVersion != 'SharingMode_LockProtected' )
              & ( 'SharingMode_Unshared' != 'System_Collections_IEnumerable' )
              & ( 'SharingMode_LockProtected' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_UIntPtr' != stringLiteral0 )
              & ( 'FirstConsistentOwner' != 'System_Collections_IEnumerable' )
              & ( sharingMode != ownerRef )
              & ( 'PeerGroupPlaceholder' != 'NonNullFieldsAreInitialized' )
              & ( 'System_UInt16' != 'System_UIntPtr' )
              & ( localinv != 'System_UInt16' )
              & ( 'SharingMode_Unshared' != 'ArrayCategoryNonNullRef' )
              & ( 'System_IConvertible' != 'System_IComparable' )
              & ( exposeVersion != 'FirstConsistentOwner' )
              & ( 'ArrayCategoryRef' != 'FirstConsistentOwner' )
              & ( 'System_UIntPtr' != 'System_IntPtr' )
              & ( ownerFrame != 'System_String' )
              & ( 'System_UIntPtr' != 'System_IComparable_1___System_String' )
              & ( 'ArrayCategoryValue' != 'System_Char' )
              & ( localinv != 'System_IComparable' )
              & ( allocated != 'System_UIntPtr' )
              & ( 'System_Int32' != 'System_Collections_IEnumerable' )
              & ( 'System_SByte' != 'System_UIntPtr' )
              & ( ownerFrame != 'System_Char' )
              & ( allocated != 'ArrayCategoryRef' )
              & ( ownerFrame != 'System_UIntPtr' )
              & ( 'System_Int64' != 'System_IComparable' )
              & ( allocated != 'System_IComparable_1___System_String' )
              & ( 'Factorial' != 'System_Collections_IEnumerable' )
              & ( allocated != 'System_Type' )
              & ( 'System_ICloneable' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Object' != 'System_UInt64' )
              & ( localinv != 'ArrayCategoryValue' )
              & ( 'System_UInt32' != 'System_Char' )
              & ( 'System_Boolean' != 'System_UInt32' )
              & ( ownerFrame != 'System_ICloneable' )
              & ( 'System_UInt64' != 'System_IEquatable_1___System_String' )
              & ( sharingMode != 'FirstConsistentOwner' )
              & ( ownerFrame != 'System_Int64' )
              & ( allocated != 'System_UInt16' )
              & ( 'System_Int16' != 'System_UInt16' )
              & ( allocated != 'System_IEquatable_1___System_String' )
              & ( 'System_Object' != 'System_IEquatable_1___System_String' )
              & ( 'ArrayCategoryInt' != 'System_UInt64' )
              & ( ownerRef != 'System_IConvertible' )
              & ( allocated != 'System_IConvertible' )
              & ( inv != 'SharingMode_LockProtected' )
              & ( 'FirstConsistentOwner' != 'System_UIntPtr' )
              & ( 'System_UInt16' != 'System_Collections_IEnumerable' )
              & ( 'System_Int32' != 'System_UInt32' )
              & ( 'System_UInt16' != 'System_IComparable_1___System_String' )
              & ( 'PeerGroupPlaceholder' != 'Factorial' )
              & ( elements != 'System_IConvertible' )
              & ( allocated != 'SharingMode_Unshared' )
              & ( 'System_Type' != 'System_String' )
              & ( inv != 'ArrayCategoryRef' )
              & ( 'ArrayCategoryNonNullRef' != 'System_IEquatable_1___System_String' )
              & ( elements != 'FirstConsistentOwner' )
              & ( 'System_UInt16' != 'System_Char' )
              & ( 'SharingMode_LockProtected' != 'System_Byte' )
              & ( 'System_Object' != 'System_String' )
              & ( elements != 'System_Byte' )
              & ( exposeVersion != 'System_IComparable_1___System_String' )
              & ( 'System_String' != 'System_IEquatable_1___System_String' )
              & ( 'System_Boolean' != 'System_IComparable_1___System_String' )
              & ( 'System_Array' != 'System_UInt32' )
              & ( 'System_Object' != 'System_UInt16' )
              & ( ownerRef != 'System_Int16' )
              & ( 'System_String' != 'FirstConsistentOwner' )
              & ( 'System_Array' != 'System_IComparable_1___System_String' )
              & ( 'ArrayCategoryValue' != stringLiteral0 )
              & ( 'ArrayCategoryValue' != 'NonNullFieldsAreInitialized' )
              & ( exposeVersion != 'System_UIntPtr' )
              & ( 'System_Int32' != 'System_Char' )
              & ( localinv != 'NonNullFieldsAreInitialized' )
              & ( 'NonNullFieldsAreInitialized' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_IComparable' != stringLiteral0 )
              & ( inv != 'ArrayCategoryValue' )
              & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_Collections_IEnumerable' )
              & ( 'System_Object' != 'FirstConsistentOwner' )
              & ( 'ArrayCategoryRef' != 'System_Type' )
              & ( 'System_Int32' != 'System_UInt64' )
              & ( ownerFrame != 'System_Int16' )
              & ( 'System_Type' != 'System_UInt32' )
              & ( 'System_Byte' != 'System_IComparable_1___System_String' )
              & ( 'System_String' != 'System_Int64' )
              & ( 'System_String' != 'System_IntPtr' )
              & ( 'System_Type' != 'System_UInt64' )
              & ( exposeVersion != 'SharingMode_Unshared' )
              & ( 'ArrayCategoryInt' != 'System_UIntPtr' )
              & ( ownerRef != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'ArrayCategoryInt' != 'System_Int16' )
              & ( elements != localinv )
              & ( 'ArrayCategoryNonNullRef' != 'System_ICloneable' )
              & ( 'System_UInt64' != 'System_IComparable_1___System_String' )
              & ( 'PeerGroupPlaceholder' != 'System_String' )
              & ( 'ArrayCategoryInt' != 'System_IConvertible' )
              & ( 'System_String' != 'System_UInt32' )
              & ( 'SharingMode_Unshared' != 'System_UIntPtr' )
              & ( 'System_Type' != 'System_Byte' )
              & ( 'System_Array' != 'System_UIntPtr' )
              & ( 'SharingMode_Unshared' != 'System_Boolean' )
              & ( elements != ownerFrame )
              & ( inv != 'System_Object' )
              & ( inv != 'SharingMode_Unshared' )
              & ( 'ArrayCategoryRef' != 'System_UInt32' )
              & ( 'System_SByte' != 'System_IComparable_1___System_String' )
              & ( 'System_UIntPtr' != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_Unshared' != 'NonNullFieldsAreInitialized' )
              & ( 'SharingMode_LockProtected' != 'System_Boolean' )
              & ( allocated != exposeVersion )
              & ( localinv != 'System_IConvertible' )
              & ( 'PeerGroupPlaceholder' != 'System_IComparable_1___System_String' )
              & ( 'System_Array' != 'System_SByte' )
              & ( allocated != 'System_Boolean' )
              & ( 'System_Byte' != stringLiteral0 )
              & ( 'ArrayCategoryInt' != 'System_IComparable' )
              & ( 'ArrayCategoryNonNullRef' != 'FirstConsistentOwner' )
              & ( 'System_Byte' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_String' != 'System_IComparable_1___System_String' )
              & ( allocated != 'NonNullFieldsAreInitialized' )
              & ( 'System_Int64' != 'System_ICloneable' )
              & ( 'System_Array' != 'System_Type' )
              & ( ownerRef != 'System_Int64' )
              & ( 'System_Array' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( exposeVersion != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_Unshared' != 'System_Int64' )
              & ( localinv != ownerRef )
              & ( 'PeerGroupPlaceholder' != 'System_Byte' )
              & ( sharingMode != 'System_UInt16' )
              & ( elements != ownerRef )
              & ( 'SharingMode_LockProtected' != 'System_Int16' )
              & ( 'System_IEquatable_1___System_String' != 'System_Collections_IEnumerable' )
              & ( 'FirstConsistentOwner' != 'System_IComparable' )
              & ( exposeVersion != 'ArrayCategoryValue' )
              & ( 'System_IEquatable_1___System_String' != 'Factorial' )
              & ( ownerFrame != 'System_Int32' )
              & ( 'System_Array' != 'Factorial' )
              & ( localinv != 'System_SByte' )
              & ( inv != stringLiteral0 )
              & ( 'FirstConsistentOwner' != 'System_SByte' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Object' )
              & ( exposeVersion != 'System_Char' )
              & ( 'System_UInt16' != 'System_IntPtr' )
              & ( 'System_Object' != 'NonNullFieldsAreInitialized' )
              & ( 'PeerGroupPlaceholder' != 'System_UInt32' )
              & ( 'System_SByte' != stringLiteral0 )
              & ( 'FirstConsistentOwner' != 'Factorial' )
              & ( 'System_Array' != 'System_UInt16' )
              & ( 'SharingMode_LockProtected' != 'System_UInt64' )
              & ( 'System_Type' != 'System_ICloneable' )
              & ( 'System_SByte' != 'System_Int32' )
              & ( 'ArrayCategoryValue' != 'ArrayCategoryNonNullRef' )
              & ( 'System_SByte' != 'System_UInt64' )
              & ( 'ArrayCategoryValue' != 'ArrayCategoryRef' )
              & ( 'System_Char' != 'System_UIntPtr' )
              & ( 'ArrayCategoryInt' != 'System_ICloneable' )
              & ( allocated != 'ArrayCategoryValue' )
              & ( 'System_UIntPtr' != 'Factorial' )
              & ( inv != 'System_ICloneable' )
              & ( 'System_SByte' != 'System_IConvertible' )
              & ( exposeVersion != 'System_Object' )
              & ( ownerFrame != 'System_IComparable_1___System_String' )
              & ( 'ArrayCategoryInt' != 'System_Collections_IEnumerable' )
              & ( 'System_IEquatable_1___System_String' != 'System_IComparable_1___System_String' )
              & ( 'ArrayCategoryNonNullRef' != 'System_UIntPtr' )
              & ( 'ArrayCategoryRef' != 'System_SByte' )
              & ( localinv != 'System_Object' )
              & ( 'System_Array' != 'System_Byte' )
              & ( 'System_SByte' != 'System_Byte' )
              & ( 'System_Object' != 'System_UInt32' )
              & ( 'FirstConsistentOwner' != 'System_UInt64' )
              & ( 'ArrayCategoryInt' != 'System_UInt32' )
              & ( ownerRef != 'System_UIntPtr' )
              & ( sharingMode != 'PeerGroupPlaceholder' )
              & ( ownerRef != 'System_IntPtr' )
              & ( allocated != 'System_Byte' )
              & ( 'PeerGroupPlaceholder' != 'System_UIntPtr' )
              & ( 'SharingMode_LockProtected' != stringLiteral0 )
              & ( elements != 'System_UInt64' )
              & ( 'System_Char' != 'System_Collections_IEnumerable' )
              & ( 'System_Int32' != 'System_UIntPtr' )
              & ( 'PeerGroupPlaceholder' != 'System_Boolean' )
              & ( 'System_Type' != 'FirstConsistentOwner' )
              & ( allocated != 'ArrayCategoryNonNullRef' )
              & ( 'System_UInt32' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( exposeVersion != 'Factorial' )
              & ( 'SharingMode_LockProtected' != 'NonNullFieldsAreInitialized' )
              & ( 'System_Type' != 'System_Collections_IEnumerable' )
              & ( elements != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Object' != 'System_IComparable_1___System_String' )
              & ( 'System_Int32' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( sharingMode != 'System_IEquatable_1___System_String' )
              & ( ownerFrame != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_LockProtected' != 'System_UInt16' )
              & ( 'System_IComparable_1___System_String' != stringLiteral0 )
              & ( 'FirstConsistentOwner' != 'System_UInt16' )
              & ( 'ArrayCategoryValue' != 'System_String' )
              & ( 'System_IEquatable_1___System_String' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( ownerFrame != 'System_Byte' )
              & ( 'System_Object' != 'System_SByte' )
              & ( 'ArrayCategoryValue' != 'System_IntPtr' )
              & ( elements != 'System_SByte' )
              & ( 'System_Char' != 'System_IComparable' )
              & ( 'NonNullFieldsAreInitialized' != 'System_String' )
              & ( 'System_UInt16' != 'Factorial' )
              & ( 'ArrayCategoryRef' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( exposeVersion != 'System_Int32' )
              & ( 'ArrayCategoryValue' != 'System_UInt64' )
              & ( exposeVersion != 'System_Collections_IEnumerable' )
              & ( 'SharingMode_LockProtected' != 'ArrayCategoryValue' )
              & ( 'System_UIntPtr' != 'System_Collections_IEnumerable' )
              & ( 'System_Byte' != 'System_IEquatable_1___System_String' )
              & ( 'System_IEquatable_1___System_String' != stringLiteral0 )
              & ( elements != 'System_Int16' )
              & ( 'System_Boolean' != 'Factorial' )
              & ( inv != 'ArrayCategoryNonNullRef' )
              & ( localinv != 'System_Boolean' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Type' )
              & ( 'FirstConsistentOwner' != 'System_Int32' )
              & ( sharingMode != 'System_String' )
              & ( 'ArrayCategoryValue' != 'ArrayCategoryInt' )
              & ( 'PeerGroupPlaceholder' != 'System_Object' )
              & ( 'System_String' != 'System_UIntPtr' )
              & ( 'ArrayCategoryInt' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( allocated != 'Factorial' )
              & ( 'ArrayCategoryRef' != 'System_UInt64' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Int32' )
              & ( 'System_Array' != 'System_IConvertible' )
              & ( inv != ownerFrame )
              & ( allocated != 'System_Int32' )
              & ( 'ArrayCategoryInt' != 'Factorial' )
              & ( 'SharingMode_Unshared' != 'System_IntPtr' )
              & ( inv != 'System_IComparable_1___System_String' )
              & ( ownerRef != 'ArrayCategoryNonNullRef' )
              & ( 'ArrayCategoryInt' != 'ArrayCategoryRef' )
              & ( allocated != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Int16' != 'System_Char' )
              & ( ownerFrame != 'System_Object' )
              & ( 'System_Object' != 'System_UIntPtr' )
              & ( 'System_Byte' != 'System_Collections_IEnumerable' )
              & ( 'System_Boolean' != 'System_SByte' )
              & ( sharingMode != 'SharingMode_Unshared' )
              & ( 'System_IntPtr' != 'Factorial' )
              & ( ownerFrame != 'FirstConsistentOwner' )
              & ( 'System_IConvertible' != 'System_Collections_IEnumerable' )
              & ( 'SharingMode_Unshared' != 'System_ICloneable' )
              & ( ownerRef != stringLiteral0 )
              & ( 'ArrayCategoryRef' != 'System_UInt16' )
              & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'Factorial' )
              & ( 'System_Type' != 'System_Int16' )
              & ( inv != 'System_UInt32' )
              & ( ownerFrame != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_UInt32' != 'System_IComparable_1___System_String' )
              & ( 'FirstConsistentOwner' != 'System_Int64' )
              & ( 'ArrayCategoryRef' != 'Factorial' )
              & ( 'System_Int64' != 'System_IComparable_1___System_String' )
              & ( 'System_Array' != 'System_IEquatable_1___System_String' )
              & ( inv != exposeVersion )
              & ( sharingMode != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( allocated != 'System_String' )
              & ( allocated != 'System_Collections_IEnumerable' )
              & ( inv != 'System_Collections_IEnumerable' )
              & ( 'System_String' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'FirstConsistentOwner' != 'System_Int16' )
              & ( 'NonNullFieldsAreInitialized' != 'System_UInt16' )
              & ( 'System_Type' != 'Factorial' )
              & ( 'ArrayCategoryInt' != 'System_String' )
              & ( inv != 'System_IConvertible' )
              & ( 'System_String' != 'System_SByte' )
              & ( 'PeerGroupPlaceholder' != 'System_IConvertible' )
              & ( sharingMode != ownerFrame )
              & ( 'SharingMode_LockProtected' != 'System_IComparable' )
              & ( elements != 'System_Int64' )
              & ( 'ArrayCategoryInt' != 'System_IComparable_1___System_String' )
              & ( exposeVersion != 'PeerGroupPlaceholder' )
              & ( 'ArrayCategoryNonNullRef' != 'System_UInt32' )
              & ( inv != 'FirstConsistentOwner' )
              & ( 'SharingMode_Unshared' != 'ArrayCategoryInt' )
              & ( 'System_UInt32' != 'System_UInt64' )
              & ( 'System_Byte' != 'System_Int16' )
              & ( sharingMode != 'System_Byte' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Byte' )
              & ( ownerFrame != 'System_UInt64' )
              & ( ownerFrame != 'NonNullFieldsAreInitialized' )
              & ( 'System_Int16' != 'System_IComparable_1___System_String' )
              & ( 'SharingMode_Unshared' != 'Factorial' )
              & ( 'SharingMode_LockProtected' != 'System_Char' )
              & ( 'System_UInt32' != 'Factorial' )
              & ( sharingMode != 'ArrayCategoryNonNullRef' )
              & ( 'System_Type' != 'System_IntPtr' )
              & ( 'SharingMode_Unshared' != 'System_Char' )
              & ( 'ArrayCategoryInt' != 'System_Type' )
              & ( 'System_Int32' != 'System_IConvertible' )
              & ( 'PeerGroupPlaceholder' != 'System_Char' )
              & ( 'System_Object' != 'System_Collections_IEnumerable' )
              & ( 'System_ICloneable' != 'Factorial' )
              & ( elements != 'ArrayCategoryValue' )
              & ( 'System_SByte' != 'System_IntPtr' )
              & ( ownerFrame != 'System_SByte' )
              & ( 'System_Int64' != 'System_IConvertible' )
              & ( 'System_Byte' != 'System_Int32' )
              & ( 'SharingMode_LockProtected' != 'PeerGroupPlaceholder' )
              & ( ownerFrame != 'System_UInt32' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Int64' )
              & ( 'ArrayCategoryRef' != stringLiteral0 )
              & ( 'PeerGroupPlaceholder' != 'System_Int64' )
              & ( localinv != 'System_Char' )
              & ( 'PeerGroupPlaceholder' != 'System_IComparable' )
              & ( 'System_IEquatable_1___System_String' != 'System_IComparable' )
              & ( 'FirstConsistentOwner' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( allocated != 'System_Char' )
              & ( 'System_Array' != 'System_String' )
              & ( 'System_Int64' != 'System_UInt64' )
              & ( 'System_UInt64' != stringLiteral0 )
              & ( 'SharingMode_LockProtected' != 'System_Type' )
              & ( localinv != 'System_ICloneable' )
              & ( localinv != 'System_Int64' )
              & ( 'System_UIntPtr' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'SharingMode_LockProtected' != 'System_IntPtr' )
              & ( 'System_UInt32' != 'System_UIntPtr' )
              & ( inv != localinv )
              & ( exposeVersion != 'ArrayCategoryRef' )
              & ( exposeVersion != 'ArrayCategoryInt' )
              & ( 'ArrayCategoryRef' != 'System_Object' )
              & ( exposeVersion != 'System_Type' )
              & ( exposeVersion != 'System_UInt64' )
              & ( 'System_Array' != 'System_IntPtr' )
              & ( sharingMode != stringLiteral0 )
              & ( localinv != 'System_Int16' )
              & ( 'System_UIntPtr' != 'System_ICloneable' )
              & ( allocated != sharingMode )
              & ( 'PeerGroupPlaceholder' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( ownerRef != 'System_String' )
              & ( 'System_Boolean' != 'System_IntPtr' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Int16' )
              & ( 'ArrayCategoryInt' != 'FirstConsistentOwner' )
              & ( elements != stringLiteral0 )
              & ( 'System_Type' != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_LockProtected' != 'ArrayCategoryRef' )
              & ( ownerFrame != 'ArrayCategoryInt' )
              & ( 'System_Object' != 'System_Int16' )
              & ( elements != 'PeerGroupPlaceholder' )
              & ( exposeVersion != sharingMode )
              & ( exposeVersion != ownerFrame )
              & ( sharingMode != 'System_Boolean' )
              & ( 'System_Int64' != 'System_Char' )
              & ( 'System_ICloneable' != 'System_IComparable' )
              & ( elements != 'System_Array' )
              & ( 'System_Int16' != 'System_Int32' )
              & ( allocated != localinv )
              & ( ownerFrame != 'ArrayCategoryValue' )
              & ( allocated != ownerRef )
              & ( 'System_String' != 'System_Collections_IEnumerable' )
              & ( 'System_Type' != 'System_IComparable' )
              & ( 'System_SByte' != 'System_ICloneable' )
              & ( localinv != 'System_Byte' )
              & ( 'System_UInt64' != 'System_IntPtr' )
              & ( 'System_Array' != 'System_IComparable' )
              & ( allocated != 'System_UInt32' )
              & ( elements != 'ArrayCategoryRef' )
              & ( 'System_UInt64' != 'System_Char' )
              & ( 'System_Char' != 'System_IEquatable_1___System_String' )
              & ( 'System_Char' != 'System_IntPtr' )
              & ( 'System_Type' != 'NonNullFieldsAreInitialized' )
              & ( ownerRef != ownerFrame )
              & ( 'SharingMode_Unshared' != 'ArrayCategoryRef' )
              & ( 'FirstConsistentOwner' != 'System_IConvertible' )
              & ( 'ArrayCategoryRef' != 'System_IEquatable_1___System_String' )
              & ( 'System_Int16' != 'System_UInt64' )
              & ( sharingMode != 'System_Type' )
              & ( elements != 'ArrayCategoryNonNullRef' )
              & ( 'System_Byte' != 'System_Int64' )
              & ( 'SharingMode_Unshared' != 'SharingMode_LockProtected' )
              & ( 'ArrayCategoryValue' != 'System_Boolean' )
              & ( 'System_Byte' != 'System_Char' )
              & ( 'System_IConvertible' != 'Factorial' )
              & ( 'ArrayCategoryRef' != 'ArrayCategoryNonNullRef' )
              & ( localinv != 'System_IntPtr' )
              & ( 'System_IntPtr' != 'System_IEquatable_1___System_String' )
              & ( 'System_Int32' != 'System_IntPtr' )
              & ( 'ArrayCategoryValue' != 'System_ICloneable' )
              & ( 'System_String' != 'System_IConvertible' )
              & ( 'ArrayCategoryInt' != 'System_Array' )
              & ( 'System_String' != 'System_ICloneable' )
              & ( 'System_Array' != stringLiteral0 )
              & ( allocated != 'ArrayCategoryInt' )
              & ( exposeVersion != 'NonNullFieldsAreInitialized' )
              & ( 'System_IConvertible' != 'System_IComparable_1___System_String' )
              & ( 'NonNullFieldsAreInitialized' != 'System_Byte' )
              & ( 'SharingMode_Unshared' != 'System_Type' )
              & ( 'System_String' != 'System_UInt64' )
              & ( localinv != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Int16' != 'System_UIntPtr' )
              & ( elements != 'System_IComparable' )
              & ( localinv != 'System_IEquatable_1___System_String' )
              & ( 'ArrayCategoryRef' != 'System_ICloneable' )
              & ( 'SharingMode_LockProtected' != 'System_UInt32' )
              & ( 'ArrayCategoryNonNullRef' != 'System_UInt64' )
              & ( 'PeerGroupPlaceholder' != 'System_ICloneable' )
              & ( 'System_UInt64' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( ownerFrame != 'System_Collections_IEnumerable' )
              & ( 'System_Array' != 'System_UInt64' )
              & ( 'ArrayCategoryRef' != 'System_Collections_IEnumerable' )
              & ( 'SharingMode_Unshared' != 'System_UInt64' )
              & ( ownerRef != 'ArrayCategoryValue' )
              & ( 'System_UInt64' != 'System_IConvertible' )
              & ( sharingMode != 'System_IntPtr' )
              & ( 'ArrayCategoryRef' != 'System_Boolean' )
              & ( 'System_SByte' != 'System_IEquatable_1___System_String' )
              & ( allocated != 'System_Int16' )
              & ( localinv != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryNonNullRef' != 'Factorial' )
              & ( localinv != 'SharingMode_LockProtected' )
              & ( 'NonNullFieldsAreInitialized' != 'System_Int16' )
              & ( exposeVersion != ownerRef )
              & ( 'System_Type' != 'System_Int32' )
              & ( 'PeerGroupPlaceholder' != 'ArrayCategoryInt' )
              & ( 'System_ICloneable' != 'System_IComparable_1___System_String' )
              & ( 'System_Int16' != stringLiteral0 )
              & ( 'ArrayCategoryValue' != 'System_Byte' )
              & ( 'ArrayCategoryInt' != 'System_Object' )
              & ( inv != 'System_String' )
              & ( inv != 'System_Int16' )
              & ( ownerFrame != 'PeerGroupPlaceholder' )
              & ( elements != inv )
              & ( localinv != stringLiteral0 )
              & ( elements != 'System_UInt16' )
              & ( sharingMode != 'ArrayCategoryValue' )
              & ( 'System_Boolean' != 'FirstConsistentOwner' )
              & ( 'System_Char' != 'System_ICloneable' )
              & ( 'System_Object' != 'System_Int32' )
              & ( 'System_Array' != 'System_Object' )
              & ( ownerRef != 'System_IComparable_1___System_String' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Collections_IEnumerable' )
              & ( 'PeerGroupPlaceholder' != 'ArrayCategoryRef' )
              & ( exposeVersion != 'System_UInt32' )
              & ( 'System_Int32' != 'System_IEquatable_1___System_String' )
              & ( 'System_String' != 'System_Byte' )
              & ( 'System_IntPtr' != 'System_IComparable_1___System_String' )
              & ( 'System_String' != 'System_Int16' )
              & ( 'SharingMode_Unshared' != 'System_Int32' )
              & ( 'System_UInt32' != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_Unshared' != 'System_IEquatable_1___System_String' )
              & ( ownerFrame != 'System_Array' )
              & ( 'System_Array' != 'NonNullFieldsAreInitialized' )
              & ( 'System_Array' != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryNonNullRef' != stringLiteral0 )
              & ( 'ArrayCategoryValue' != 'System_IComparable' )
              & ( 'System_Type' != 'System_UIntPtr' )
              & ( 'System_UInt32' != 'System_Int64' )
              & ( 'System_UInt16' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'SharingMode_Unshared' != 'FirstConsistentOwner' )
              & ( 'ArrayCategoryNonNullRef' != 'System_IntPtr' )
              & ( 'SharingMode_Unshared' != ownerRef )
              & ( 'System_Byte' != 'System_UInt16' )
              & ( 'System_Boolean' != 'System_UIntPtr' )
              & ( exposeVersion != 'System_IComparable' )
              & ( 'System_Int64' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'NonNullFieldsAreInitialized' != 'Factorial' )
              & ( elements != 'System_UIntPtr' )
              & ( 'System_UInt64' != 'System_UIntPtr' )
              & ( inv != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'SharingMode_Unshared' != stringLiteral0 )
              & ( inv != 'System_Boolean' )
              & ( inv != 'System_IComparable' )
              & ( 'System_Type' != 'System_UInt16' )
              & ( exposeVersion != 'System_IConvertible' )
              & ( 'System_String' != 'Factorial' )
              & ( 'System_IntPtr' != stringLiteral0 )
              & ( 'System_ICloneable' != 'System_IConvertible' )
              & ( ownerRef != 'FirstConsistentOwner' )
              & ( exposeVersion != 'System_IntPtr' )
              & ( 'System_Byte' != 'System_IConvertible' )
              & ( allocated != inv )
              & ( sharingMode != 'System_ICloneable' )
              & ( 'System_UInt64' != 'System_ICloneable' )
              & ( ownerRef != 'NonNullFieldsAreInitialized' )
              & ( 'System_Boolean' != 'System_Object' )
              & ( 'System_Object' != 'System_Type' )
              & ( inv != 'System_UIntPtr' )
              & ( 'ArrayCategoryRef' != 'System_Int32' )
              & ( sharingMode != 'NonNullFieldsAreInitialized' )
              & ( ownerRef != 'System_ICloneable' )
              & ( 'SharingMode_LockProtected' != 'System_Int64' )
              & ( 'System_Boolean' != 'System_UInt16' )
              & ( 'ArrayCategoryNonNullRef' != 'System_IComparable_1___System_String' )
              & ( elements != 'System_String' )
              & ( 'ArrayCategoryNonNullRef' != 'System_String' )
              & ( 'System_Array' != 'System_ICloneable' )
              & ( 'System_Object' != stringLiteral0 )
              & ( 'ArrayCategoryValue' != 'System_UIntPtr' )
              & ( 'ArrayCategoryRef' != 'System_IComparable' )
              & ( 'System_Int64' != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryValue' != 'System_Object' )
              & ( 'System_Byte' != 'System_UInt64' )
              & ( 'System_UInt16' != 'System_UInt32' )
              & ( 'ArrayCategoryValue' != 'System_IConvertible' )
              & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != stringLiteral0 )
              & ( 'System_SByte' != 'System_Char' )
              & ( 'System_String' != stringLiteral0 )
              & ( 'System_UInt64' != 'Factorial' )
              & ( 'System_IConvertible' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( localinv != 'System_IComparable_1___System_String' )
              & ( 'SharingMode_Unshared' != 'System_Array' )
              & ( 'System_SByte' != 'Factorial' )
              & ( elements != sharingMode )
              & ( 'SharingMode_LockProtected' != 'ArrayCategoryInt' )
              & ( ownerFrame != 'ArrayCategoryNonNullRef' )
              & ( 'System_Array' != 'System_Boolean' )
              & ( localinv != exposeVersion )
              & ( 'System_UInt16' != 'System_IComparable' )
              & ( 'SharingMode_LockProtected' != 'System_IConvertible' )
              & ( ownerRef != 'System_Byte' )
              & ( 'NonNullFieldsAreInitialized' != 'System_UIntPtr' )
              & ( 'System_IComparable' != 'System_Collections_IEnumerable' )
              & ( 'NonNullFieldsAreInitialized' != stringLiteral0 )
              & ( 'SharingMode_LockProtected' != 'System_SByte' )
              & ( 'FirstConsistentOwner' != 'System_Char' )
              & ( 'System_String' != 'System_Int32' )
              & ( 'ArrayCategoryInt' != 'System_IntPtr' )
              & ( 'PeerGroupPlaceholder' != 'System_IEquatable_1___System_String' )
              & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_IComparable' )
              & ( ownerFrame != 'System_IConvertible' )
              & ( 'NonNullFieldsAreInitialized' != 'System_Int64' )
              & ( exposeVersion != 'System_Int64' )
              & ( ownerRef != 'System_Object' )
              & ( elements != 'Factorial' )
              & ( 'FirstConsistentOwner' != 'System_UInt32' )
              & ( 'System_UIntPtr' != 'System_IComparable' )
              & ( elements != 'System_Collections_IEnumerable' )
              & ( sharingMode != 'ArrayCategoryRef' )
              & ( ownerRef != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_LockProtected' != 'System_Int32' )
              & ( 'System_Boolean' != 'NonNullFieldsAreInitialized' )
              & ( 'System_SByte' != 'System_Int16' )
              & ( 'System_Byte' != 'Factorial' )
              & ( 'PeerGroupPlaceholder' != 'System_Type' )
              & ( 'System_Array' != 'FirstConsistentOwner' )
              & ( sharingMode != 'Factorial' )
              & ( 'ArrayCategoryValue' != 'System_Array' )
              & ( inv != 'System_Char' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Boolean' )
              & ( 'System_ICloneable' != 'System_IEquatable_1___System_String' )
              & ( allocated != 'System_IComparable' )
              & ( ownerRef != 'System_Array' )
              & ( 'FirstConsistentOwner' != 'System_IEquatable_1___System_String' )
              & ( elements != 'System_ICloneable' )
              & ( 'System_UInt16' != 'System_IConvertible' )
              & ( 'System_UInt64' != 'System_Collections_IEnumerable' )
              & ( 'System_UInt32' != 'System_Collections_IEnumerable' )
              & ( exposeVersion != 'System_UInt16' )
              & ( 'PeerGroupPlaceholder' != 'System_SByte' )
              & ( 'ArrayCategoryNonNullRef' != 'System_IConvertible' )
              & ( 'System_UInt32' != 'System_IComparable' )
              & ( 'PeerGroupPlaceholder' != 'System_UInt16' )
              & ( ownerRef != 'System_Int32' )
              & ( 'NonNullFieldsAreInitialized' != 'System_UInt32' )
              & ( ownerRef != 'PeerGroupPlaceholder' )
              & ( exposeVersion != 'System_String' )
              & ( 'System_SByte' != 'System_UInt16' )
              & ( inv != sharingMode )
              & ( 'NonNullFieldsAreInitialized' != 'System_ICloneable' )
              & ( 'NonNullFieldsAreInitialized' != 'System_IEquatable_1___System_String' )
              & ( allocated != 'System_IntPtr' )
              & ( 'System_ICloneable' != stringLiteral0 )
              & ( 'NonNullFieldsAreInitialized' != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryRef' != 'System_Array' )
              & ( 'System_Int64' != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_LockProtected' != ownerFrame )
              & ( inv != 'System_Byte' )
              & ( 'System_IntPtr' != 'System_IConvertible' )
              & ( 'ArrayCategoryInt' != 'System_Int32' )
              & ( 'System_Int16' != 'System_ICloneable' )
              & ( 'SharingMode_LockProtected' != ownerRef )
              & ( elements != 'System_Type' )
              & ( inv != 'System_IEquatable_1___System_String' )
              & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_IComparable_1___System_String' )
              & ( 'System_Object' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'SharingMode_Unshared' != 'System_IComparable' )
              & ( 'System_UInt64' != 'System_IComparable' )
              & ( 'System_String' != 'System_Char' )
              & ( 'FirstConsistentOwner' != 'System_IComparable_1___System_String' )
              & ( sharingMode != 'System_UInt32' )
              & ( 'System_UInt16' != 'System_UInt64' )
              & ( 'ArrayCategoryInt' != 'System_Boolean' )
              & ( 'System_Object' != 'System_Int64' )
              & ( 'System_Object' != 'Factorial' )
              & ( 'SharingMode_Unshared' != 'PeerGroupPlaceholder' )
              & ( sharingMode != 'System_Int16' )
              & ( 'System_UInt32' != 'System_ICloneable' )
              & ( 'System_Object' != 'System_ICloneable' )
              & ( 'System_IntPtr' != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryNonNullRef' != 'System_SByte' )
              & ( elements != 'SharingMode_LockProtected' )
              & ( inv != ownerRef )
              & ( 'ArrayCategoryInt' != 'System_IEquatable_1___System_String' )
              & ( 'System_Object' != 'System_IntPtr' )
              & ( ownerFrame != 'System_UInt16' )
              & ( elements != 'System_Boolean' )
              & ( 'ArrayCategoryRef' != 'System_IConvertible' )
              & ( 'System_IntPtr' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Type' != 'System_SByte' )
              & ( ownerRef != 'System_Type' )
              & ( 'PeerGroupPlaceholder' != 'System_IntPtr' )
              & ( 'System_ICloneable' != 'System_Collections_IEnumerable' )
              & ( 'System_Int16' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Int32' != stringLiteral0 )
              & ( 'System_Type' != 'System_IConvertible' )
              & ( ownerFrame != 'System_IComparable' )
              & ( 'NonNullFieldsAreInitialized' != 'System_IComparable_1___System_String' )
              & ( 'System_Boolean' != 'System_Char' )
              & ( 'System_IConvertible' != stringLiteral0 )
              & ( 'SharingMode_LockProtected' != 'System_UIntPtr' )
              & ( 'System_UInt32' != stringLiteral0 )
              & ( ownerRef != 'ArrayCategoryInt' )
              & ( 'SharingMode_LockProtected' != 'System_Array' )
              & ( 'System_Boolean' != 'System_IComparable' )
              & ( 'ArrayCategoryInt' != 'System_Int64' )
              & ( sharingMode != 'System_UIntPtr' )
              & ( localinv != 'System_UInt64' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Array' )
              & ( 'System_Boolean' != 'System_ICloneable' )
              & ( localinv != 'System_Int32' )
              & ( 'PeerGroupPlaceholder' != stringLiteral0 )
              & ( 'Factorial' != stringLiteral0 )
              & ( ownerRef != 'System_Boolean' )
              & ( allocated != elements )
              & ( 'System_UInt16' != 'System_Int32' )
              & ( 'ArrayCategoryRef' != 'System_Int64' )
              & ( ownerFrame != 'System_Boolean' )
              & ( 'PeerGroupPlaceholder' != 'ArrayCategoryValue' )
              & ( 'System_Int16' != 'System_IConvertible' )
              & ( 'ArrayCategoryNonNullRef' != 'NonNullFieldsAreInitialized' )
              & ( localinv != 'System_Type' )
              & ( ownerRef != 'System_IComparable' )
              & ( 'ArrayCategoryInt' != 'System_Char' )
              & ( 'ArrayCategoryRef' != 'System_IntPtr' )
              & ( 'ArrayCategoryValue' != 'System_Type' )
              & ( 'ArrayCategoryRef' != 'System_String' )
              & ( 'System_Boolean' != 'System_String' )
              & ( 'System_Object' != 'System_Char' )
              & ( inv != 'System_Int32' )
              & ( 'System_SByte' != 'System_UInt32' )
              & ( 'SharingMode_Unshared' != 'System_UInt16' )
              & ( 'SharingMode_LockProtected' != 'Factorial' )
              & ( 'System_Byte' != 'System_IntPtr' )
              & ( 'System_Int32' != 'Factorial' )
              & ( 'PeerGroupPlaceholder' != 'ArrayCategoryNonNullRef' )
              & ( 'System_Boolean' != 'System_Int64' )
              & ( 'SharingMode_Unshared' != 'ArrayCategoryValue' )
              & ( sharingMode != 'System_Object' )
              & ( 'FirstConsistentOwner' != 'System_Byte' )
              & ( inv != 'System_IntPtr' ) )
          | ( 'IsStaticField'(inv) = true_1 )
          | ~ ! [X39: $int,X38: $int,X7: $int] : ( 'StructGet'('StructSet'(X38,X39,X7),X39) = X7 )
          | ~ ! [X70: $int,X71: $int,X69: $int,X7: $int] :
                ( ( 'IsValueType'('UnboxedType'(X7)) != true_1 )
               => ( 'BoxFunc'(X7,X69,X70,X71) = X7 ) )
          | ( 'IncludeInMainFrameCondition'(ownerFrame) != true_1 )
          | ~ ! [X36: $int] : ( 'IsMemberlessType'(typeof(X36)) != true_1 )
          | ~ ! [X4: $int,X9: $int,X47: $int] :
                ~ ( ~ ( ( X9 = X47 )
                     => ( 'StringEquals'(X9,X47) = true_1 ) )
                  | ~ ( ( 'StringEquals'(X47,X9) = true_1 )
                    <=> ( 'System_String_Equals_System_String_System_String'(X4,X9,X47) = true_1 ) )
                  | ~ ( ( 'StringEquals'(X9,X47) = true_1 )
                    <=> ( 'System_String_Equals_System_String_System_String'(X4,X9,X47) = true_1 ) ) )
          | ( x('Factorial','Factorial') != true_1 )
          | ~ ! [X36: $int,X4: $int,X39: $int,X3: $int] :
                ( ( 'IsHeap'(X4) = true_1 )
               => ( 'InRange'(select2(X4,X36,'AsRangeField'(X39,X3)),X3) = true_1 ) )
          | ~ $less(int_4294967295,int_9223372036854775807)
          | ~ ! [X6: $int] :
                ( ~ ( $less(int_2147483647,X6)
                    | $less(X6,int_m2147483648) )
              <=> ( 'InRange'(X6,'System_Int32') = true_1 ) )
          | ~ ! [X3: $int] :
              ? [X41: $int] :
                ( ~ ( ( x(X3,X41) != true_1 )
                    | ~ ( ( X3 != 'System_Object' )
                       => ( X3 != X41 ) ) )
                & ( X41 = 'BaseClass'(X3) ) )
          | ( 'IsImmutable'('System_String') != true_1 )
          | ~ ! [X12: $int,X6: $int,X9: $int] :
                ( ( 'IsHeap'(X12) = true_1 )
               => ( 'InRange'('IntArrayGet'(select2(X12,X9,elements),X6),'ElementType'(typeof(X9))) = true_1 ) )
          | ( x('System_IComparable_1___System_String','System_IComparable_1___System_String') != true_1 )
          | ( 'IsStaticField'(elements) = true_1 )
          | ( x('System_Collections_Generic_IEnumerable_1___System_Char','System_Collections_IEnumerable') != true_1 )
          | ~ ! [X36: $int,X4: $int] :
                ( ( 'IsAllocated'(X4,X36) = true_1 )
               => ( select2(X4,X36,allocated) = true_1 ) )
          | ~ ! [X6: $int,X45: $int,X4: $int] :
                ( ( 'IsAllocated'(X4,X45) = true_1 )
               => ( 'IsAllocated'(X4,'ValueArrayGet'(X45,X6)) = true_1 ) )
          | ( 'DeclType'('NonNullFieldsAreInitialized') != 'System_Object' )
          | ~ ! [X3: $int,X4: $int] :
                ( ( 'IsHeap'(X4) = true_1 )
               => ( select2(X4,'ClassRepr'(X3),ownerFrame) = 'PeerGroupPlaceholder' ) )
          | ( x('System_Type','System_Object') != true_1 )
          | ( x('System_Collections_IEnumerable','System_Collections_IEnumerable') != true_1 )
          | ~ ! [X73: $int,X69: $int] :
                ( ( 'BoxTester'(X73,X69) != nullObject )
              <=> ( 'UnboxedType'(X73) = X69 ) )
          | ( 'IsValueType'('System_Byte') != true_1 )
          | ~ ! [X11: $int,X7: $int] :
              ? [X86: $int] :
                ( ~ ( $less(X86,X7)
                    | ~ ( ( X86 = X7 )
                        | ( X86 = X11 ) )
                    | $less(X86,X11) )
                & ( X86 = max(X7,X11) ) )
          | ( 'IsMemberlessType'('System_IConvertible') != true_1 )
          | ( x('System_Collections_Generic_IEnumerable_1___System_Char','System_Object') != true_1 )
          | ~ ! [X87: $int,X88: $int] :
                ( ~ ( ( select2(X88,X87,localinv) = X0 )
                    | ( 'IsHeap'(X88) != true_1 )
                    | ( x(select2(X88,X87,inv),'System_String') != true_1 ) )
               => $true )
          | ~ ! [X4: $int,X39: $int,X36: $int] :
              ? [X61: $int,X62: $int] :
                ( ( X62 = select2(X4,X36,ownerRef) )
                & ( ~ ( ( 'IsHeap'(X4) != true_1 )
                      | ( X61 = 'PeerGroupPlaceholder' )
                      | ( X36 = nullObject )
                      | ( 'AsPureObject'(X36) != X36 )
                      | ( select2(X4,X62,localinv) = 'BaseClass'(X61) )
                      | ( x(select2(X4,X62,inv),X61) != true_1 )
                      | ~ ( $true
                        <=> ( select2(X4,X36,allocated) = true_1 ) ) )
                 => ( select2(X4,X36,X39) = 'FieldDependsOnFCO'(X36,X39,select2(X4,select2(X4,X36,'FirstConsistentOwner'),exposeVersion)) ) )
                & ( X61 = select2(X4,X36,ownerFrame) ) )
          | ( 'IsMemberlessType'('System_Collections_Generic_IEnumerable_1___System_Char') != true_1 )
          | ~ ! [X6: $int,X8: $int] :
                ( ~ $less(X8,1)
               => ( shr(X6,X8) = x_1(shr(X6,$sum(X8,$uminus(1))),2) ) )
          | ~ ! [X4: $int,X39: $int,X36: $int] :
              ? [X53: $int] :
                ( ( X53 = select2(X4,X36,'AsPeerField'(X39)) )
                & ( ~ ( ( 'IsHeap'(X4) != true_1 )
                      | ( X53 = nullObject ) )
                 => ~ ( ( select2(X4,X53,ownerFrame) != select2(X4,X36,ownerFrame) )
                      | ( select2(X4,X53,ownerRef) != select2(X4,X36,ownerRef) ) ) ) )
          | ( 'StringLength'(stringLiteral0) != 19 )
          | ( $sum(int_m2147483648,1) != $sum(0,$uminus(int_2147483647)) )
          | ~ ! [X69: $int,X73: $int] :
                ( ( 'BoxTester'(X73,X69) != nullObject )
               => ( 'Box'('Unbox'(X73),X73) = X73 ) )
          | ~ ! [X11: $int,X7: $int] :
              ? [X85: $int] :
                ( ( X85 = min(X7,X11) )
                & ~ ( $less(X7,X85)
                    | ~ ( ( X85 = X7 )
                        | ( X85 = X11 ) )
                    | $less(X11,X85) ) )
          | ~ ! [X6: $int] :
                ( ( 'InRange'(X6,'System_UInt32') = true_1 )
              <=> ~ ( $less(X6,0)
                    | $less(int_4294967295,X6) ) )
          | ( 'IsImmutable'('Factorial') = true_1 )
          | ~ ! [X7: $int,X11: $int,X47: $int] :
                ( ( X47 != true_1 )
               => ( 'IfThenElse'(X47,X7,X11) = X11 ) )
          | ~ ! [X3: $int,X14: $int] :
              ? [X19: $int] :
                ( ( X19 = 'RefArray'(X3,X14) )
                & ~ ( ( x(X19,'System_Array') != true_1 )
                    | ( x(X19,X19) != true_1 ) ) )
          | ~ $less(int_m9223372036854775808,int_m2147483648)
          | ~ ( ( 'PurityAxiomsCanBeAssumed' = true_1 )
             => ! [X91: $int,X90: $int] :
                ? [X92: $int] :
                  ( ( ( 'IsHeap'(X90) = true_1 )
                   => ~ ( ~ ( ( X91 != 0 )
                           => ( $product(X91,'Factorial_recursiveFac_System_Int32'(X90,$sum(X91,$uminus(1)))) = X92 ) )
                        | ~ ( ( X91 = 0 )
                           => ( X92 = 1 ) ) ) )
                  & ( X92 = 'Factorial_recursiveFac_System_Int32'(X90,X91) ) ) )
          | ~ ! [X11: $int,X7: $int] :
                ( ( ~ $less(X7,0)
                  | ~ $less(X11,0) )
               => ~ $less(and_1(X7,X11),0) )
          | ~ ! [X8: $int,X6: $int,X7: $int,X5: $int] :
                ( ( X6 != X8 )
               => ( 'ValueArrayGet'('ValueArraySet'(X5,X6,X7),X8) = 'ValueArrayGet'(X5,X8) ) )
          | ~ ! [X12: $int] :
                ( ( 'IsHeap'(X12) = true_1 )
               => ( 'System_String_IsInterned_System_String_notnull'(X12,stringLiteral0) = stringLiteral0 ) )
          | ~ ! [X3: $int,X14: $int] :
              ? [X20: $int] :
                ( ( X20 = 'NonNullRefArray'(X3,X14) )
                & ~ ( ( x(X20,'System_Array') != true_1 )
                    | ( x(X20,X20) != true_1 ) ) )
          | ~ ! [X6: $int] :
                ( ~ ( $less(X6,$sum(0,$uminus(128)))
                    | ~ $less(X6,128) )
              <=> ( 'InRange'(X6,'System_SByte') = true_1 ) )
          | ~ ! [X38: $int] : ~ $less('StringLength'(X38),0)
          | ~ ! [X5: $int,X14: $int] : ( 'ElementType'('ValueArray'(X5,X14)) = X5 )
          | ( x('System_String','System_Collections_IEnumerable') != true_1 )
          | ~ ! [X6: $int,X7: $int,X5: $int] : ( 'ValueArrayGet'('ValueArraySet'(X5,X6,X7),X6) = X7 )
          | ~ ! [X47: $int,X9: $int,X4: $int] :
                ( ( 'System_String_Equals_System_String'(X4,X9,X47) = true_1 )
              <=> ( 'System_String_Equals_System_String_System_String'(X4,X9,X47) = true_1 ) )
          | ( 'AsInterface'('System_IEquatable_1___System_String') != 'System_IEquatable_1___System_String' )
          | ~ ! [X47: $int,X38: $int,X46: $int] :
              ? [X48: $int,X49: $int] :
                ( ( ~ ( ( X48 != X46 )
                      | ( X49 != X47 )
                      | ( x('UnboxedType'(X49),X48) != true_1 ) )
                 => ( x(typeof(X47),X46) = true_1 ) )
                & ( X48 = 'AsInterface'(X46) )
                & ( X49 = 'Box'(X38,X47) ) )
          | ~ ! [X7: $int,X6: $int,X5: $int,X8: $int] :
                ( ( X6 != X8 )
               => ( 'RefArrayGet'('RefArraySet'(X5,X6,X7),X8) = 'RefArrayGet'(X5,X8) ) )
          | ~ ! [X14: $int,X5: $int] : ( 'ElementType'('IntArray'(X5,X14)) = X5 )
          | ~ ! [X12: $int,X9: $int,X6: $int] :
              ? [X13: $int] :
                ( ( ~ ( ( 'IsHeap'(X12) != true_1 )
                      | ( X13 = nullObject ) )
                 => ( x(typeof(X13),'ElementType'(typeof(X9))) = true_1 ) )
                & ( X13 = 'RefArrayGet'(select2(X12,X9,elements),X6) ) )
          | ( x('System_IConvertible','System_Object') != true_1 )
          | ( 'AsDirectSubClass'('Factorial',X1) != 'Factorial' )
          | ~ ! [X14: $int,X5: $int] : ( 'ElementType'('NonNullRefArray'(X5,X14)) = X5 )
          | ( x('System_String','System_ICloneable') != true_1 )
          | ~ ! [X6: $int,X4: $int,X45: $int] :
                ( ( 'IsAllocated'(X4,X45) = true_1 )
               => ( 'IsAllocated'(X4,'RefArrayGet'(X45,X6)) = true_1 ) )
          | ~ ! [X3: $int,X14: $int,X5: $int] :
              ? [X33: $int] :
                ( ( ( x(X33,X3) = true_1 )
                 => ( ( x('System_Array',X3) = true_1 )
                    | ( X3 = X33 ) ) )
                & ( X33 = 'IntArray'(X5,X14) ) )
          | ( 'AsInterface'('System_ICloneable') != 'System_ICloneable' ) )
      & ( X0 = 'BaseClass'('System_String') )
      & ( X1 = 'BaseClass'('Factorial') ) ),
    inference(theory_normalization,[],[f2]) ).

tff(f24,plain,
    ? [X0: $int,X1: $int] :
      ( ~ ( ~ ! [X2: $int,X3: $int] :
              ? [X4: $int] :
                ( ( ~ ( ~ $less(X2,32768)
                      | $less(16,X3)
                      | $less(X3,0)
                      | $less(X2,0) )
                 => ~ ( $less(X4,0)
                      | $less(int_2147483647,X4) ) )
                & ( shl(X2,X3) = X4 ) )
          | ~ ! [X6: $int,X7: $int,X5: $int] :
                ( ~ ( ( true_1 != x(typeof(X5),'IntArray'(X7,X6)) )
                    | ( nullObject = X5 ) )
               => ( 'Rank'(X5) = X6 ) )
          | ( x('System_String','System_IEquatable_1___System_String') != true_1 )
          | ( 'AsInterface'('System_IConvertible') != 'System_IConvertible' )
          | ~ ! [X9: $int,X8: $int,X10: $int] :
              ? [X11: $int,X12: $int] :
                ( ( 'RefArrayGet'(select2(X8,X10,elements),X9) = X11 )
                & ( 'ElementProxy'(X10,$sum(0,$uminus(1))) = X12 )
                & ( ~ ( ( true_1 != 'IsHeap'(X8) )
                      | ( true_1 != x(typeof(X10),'System_Array') ) )
                 => ( ( nullObject = X11 )
                    | ( true_1 = 'IsImmutable'(typeof(X11)) )
                    | ~ ( ( select2(X8,X12,ownerFrame) != select2(X8,X11,ownerFrame) )
                        | ( select2(X8,X11,ownerRef) != select2(X8,X12,ownerRef) ) ) ) ) )
          | ~ ! [X14: $int,X13: $int,X15: $int] :
                ( ( true_1 = 'InRange'(X14,X15) )
               => ( 'IntToInt'(X14,X13,X15) = X14 ) )
          | ~ ! [X16: $int,X17: $int] :
              ? [X18: $int] :
                ( ( 'IntArray'(X16,X17) = X18 )
                & ~ ( ( x(X18,'System_Array') != true_1 )
                    | ( x(X18,X18) != true_1 ) ) )
          | ( 'IsStaticField'(allocated) = true_1 )
          | ( 'IsMemberlessType'('System_IComparable') != true_1 )
          | ( 'IncludedInModifiesStar'(ownerRef) = true_1 )
          | ~ ! [X20: $int,X19: $int,X21: $int] :
                ( ~ ( ( true_1 != select2(X20,X19,allocated) )
                    | ( true_1 != 'IsHeap'(X20) ) )
               => ( true_1 = 'IsAllocated'(X20,select2(X20,X19,X21)) ) )
          | ~ ! [X22: $int] :
                ( ( true_1 = 'InRange'(X22,'System_Char') )
              <=> ~ ( ~ $less(X22,65536)
                    | $less(X22,0) ) )
          | ~ ! [X23: $int] : ( nullObject != 'ClassRepr'(X23) )
          | ~ ! [X24: $int,X25: $int] :
                ( ( true_1 = x(X25,'AsMutable'(X24)) )
               => ~ ( ( 'IsImmutable'(X25) = true_1 )
                    | ( 'AsMutable'(X25) != X25 ) ) )
          | ( 'IsValueType'('System_Int16') != true_1 )
          | ( 'IncludedInModifiesStar'(ownerFrame) = true_1 )
          | ~ ! [X26: $int,X27: $int] : ( x_2(X26,X27) = $sum(X26,$uminus($product(x_1(X26,X27),X27))) )
          | ( 'IsImmutable'('System_Object') = true_1 )
          | ~ ! [X29: $int,X30: $int,X28: $int] :
              ? [X31: $int] :
                ( ( 'ValueArray'(X29,X30) = X31 )
                & ( ( true_1 = x(X31,X28) )
                 => ( ( true_1 = x('System_Array',X28) )
                    | ( X28 = X31 ) ) ) )
          | ~ ! [X32: $int,X33: $int] :
                ( ( true_1 = 'IsNotNull'(X32,X33) )
              <=> ~ ( ( true_1 != 'Is'(X32,X33) )
                    | ( nullObject = X32 ) ) )
          | ~ ! [X34: $int,X35: $int,X36: $int] :
                ( ~ ( ( nullObject = X35 )
                    | ( true_1 != x(typeof(X35),'NonNullRefArray'(X36,X34)) ) )
               => ( 'Rank'(X35) = X34 ) )
          | ~ ! [X38: $int,X37: $int] :
              ? [X40: $int,X39: $int,X41: $int] :
                ( ( ~ ( ( true_1 != x(select2(X37,X40,inv),X39) )
                      | ( true_1 != 'IsHeap'(X37) )
                      | ( select2(X37,X40,localinv) = 'BaseClass'(X39) )
                      | ( 'PeerGroupPlaceholder' = X39 ) )
                 => ~ ( ( select2(X37,X38,inv) != X41 )
                      | ( select2(X37,X38,localinv) != X41 ) ) )
                & ( select2(X37,X38,ownerRef) = X40 )
                & ( select2(X37,X38,ownerFrame) = X39 )
                & ( typeof(X38) = X41 ) )
          | ~ ! [X42: $int] : ( shr(X42,0) = X42 )
          | ~ ! [X44: $int,X43: $int] :
              ? [X45: $int] :
                ( ( typeof(X43) = X45 )
                & ( ~ ( ( true_1 != x(X45,'System_Array') )
                      | ( nullObject = X43 )
                      | ( true_1 != 'IsHeap'(X44) ) )
                 => ~ ( ( select2(X44,X43,localinv) != X45 )
                      | ( select2(X44,X43,inv) != X45 ) ) ) )
          | ( 'AsInterface'('System_IComparable_1___System_String') != 'System_IComparable_1___System_String' )
          | ~ ! [X46: $int] :
                ( ~ ( $less(X46,0)
                    | $less(int_18446744073709551615,X46) )
              <=> ( true_1 = 'InRange'(X46,'System_UInt64') ) )
          | ~ $less(int_9223372036854775807,int_18446744073709551615)
          | ~ ! [X47: $int,X50: $int,X48: $int,X49: $int] : ( 'ArrayIndexInvY'('ArrayIndex'(X50,X49,X47,X48)) = X48 )
          | ~ ! [X52: $int,X51: $int] : ( 'Unbox'('Box'(X52,X51)) = X52 )
          | ( 'AsMutable'('Factorial') != 'Factorial' )
          | ( 'IsMemberlessType'('System_ICloneable') != true_1 )
          | ~ ! [X53: $int,X54: $int] :
                ( ( ( true_1 = x(typeof(X54),X53) )
                  | ( nullObject = X54 ) )
              <=> ( true_1 = 'Is'(X54,X53) ) )
          | ( x('System_IComparable','System_IComparable') != true_1 )
          | ~ ! [X55: $int] :
                ( ( true_1 = 'IsHeap'(X55) )
               => ( true_1 = select2(X55,stringLiteral0,allocated) ) )
          | ( 'IncludeInMainFrameCondition'(allocated) != true_1 )
          | ~ $less(int_m2147483648,$sum(0,$uminus(100000)))
          | ( x('System_Collections_IEnumerable','System_Object') != true_1 )
          | ~ ! [X56: $int,X60: $int,X57: $int,X59: $int,X58: $int] :
                ( ~ ( ( true_1 != x(typeof(X60),'NonNullRefArray'(X56,X57)) )
                    | ( true_1 != 'IsHeap'(X59) ) )
               => ( nullObject != 'RefArrayGet'(select2(X59,X60,elements),X58) ) )
          | ~ $less(int_2147483647,int_4294967295)
          | ~ ! [X61: $int,X62: $int,X63: $int] :
                ( ( true_1 = X63 )
               => ( 'IfThenElse'(X63,X62,X61) = X62 ) )
          | ~ ! [X65: $int,X64: $int,X66: $int] :
                ( ( true_1 = x(X65,X64) )
               => ( true_1 = x('NonNullRefArray'(X65,X66),'NonNullRefArray'(X64,X66)) ) )
          | ~ ! [X67: $int,X68: $int] :
                ( ( true_1 != 'Is'(X68,X67) )
               => ( nullObject = 'As'(X68,X67) ) )
          | ( x('System_String','System_String') != true_1 )
          | ( x('System_String','System_Collections_Generic_IEnumerable_1___System_Char') != true_1 )
          | ~ ! [X71: $int,X70: $int,X69: $int] :
              ? [X72: $int] :
                ( ( ( true_1 = 'NonNullRefArrayRaw'(X69,X71,X70) )
                 => ~ ( ( true_1 != x(X71,'ElementType'(X72)) )
                      | ( 'Rank'(X69) != X70 )
                      | ( true_1 != x(X72,'System_Array') ) ) )
                & ( typeof(X69) = X72 ) )
          | ~ ! [X74: $int,X73: $int,X75: $int] :
              ? [X76: $int] :
                ( ( 'ElementType'(X73) = X76 )
                & ( ( true_1 = x(X73,'RefArray'(X74,X75)) )
                 => ~ ( ( true_1 != x(X76,X74) )
                      | ( X73 = X74 )
                      | ( 'RefArray'(X76,X75) != X73 ) ) ) )
          | ~ ! [X78: $int,X77: $int] : ( 'UBound'(X78,X77) = $sum('DimLength'(X78,X77),$uminus(1)) )
          | ~ ! [X80: $int,X79: $int] :
              ? [X81: $int] :
                ( ( or_1(X80,X79) = X81 )
                & ( ~ ( $less(X80,0)
                      | $less(X79,0) )
                 => ~ ( $less($sum(X80,X79),X81)
                      | $less(X81,0) ) ) )
          | ( x('System_ICloneable','System_Object') != true_1 )
          | ~ ! [X84: $int,X83: $int,X82: $int] :
                ( ( true_1 = x(X82,'NonNullRefArray'(X83,X84)) )
               => ( 'ArrayCategoryNonNullRef' = 'ArrayCategory'(X82) ) )
          | ~ ! [X85: $int] :
                ( ( true_1 = 'IsValueType'('UnboxedType'(X85)) )
               => ! [X86: $int,X87: $int] :
                  ? [X88: $int] :
                    ( ( 'Box'(X86,X85) = X88 )
                    & ? [X89: $int] :
                        ( ( ( true_1 = 'IsHeap'(X87) )
                         => ~ ( ( select2(X87,X88,localinv) != X89 )
                              | ( select2(X87,X88,inv) != X89 ) ) )
                        & ( typeof(X88) = X89 ) ) ) )
          | ~ ! [X90: $int,X91: $int] : ( 'Factorial_recursiveFac_System_Int32'(X90,X91) = 'Factorial_recursiveFac_System_Int32_1'(X91) )
          | ~ ! [X94: $int,X92: $int,X93: $int] :
                ( ~ ( $less(X93,2)
                    | ( x_2(X94,X93) != x_2(X92,X93) )
                    | ~ $less(X92,X94) )
               => ~ $less(X94,$sum(X92,X93)) )
          | ~ ! [X95: $int] :
                ( ( true_1 = 'IsValueType'(X95) )
               => ~ ( ~ ! [X97: $int] :
                          ( ( true_1 = x(X97,X95) )
                         => ( X95 = X97 ) )
                    | ~ ! [X96: $int] :
                          ( ( true_1 = x(X95,X96) )
                         => ( X95 = X96 ) ) ) )
          | ( 'IsValueType'('System_UIntPtr') != true_1 )
          | ( 'AsInterface'('System_Collections_IEnumerable') != 'System_Collections_IEnumerable' )
          | ~ ! [X99: $int,X98: $int] :
              ? [X100: $int] :
                ( ( ~ ( ( true_1 != x('UnboxedType'(X100),'System_Object') )
                      | ( X99 != X100 ) )
                 => ( X98 = X99 ) )
                & ( 'Box'(X98,X99) = X100 ) )
          | ~ ! [X103: $int,X101: $int,X102: $int] :
                ( ~ ( ( true_1 != 'StringEquals'(X103,X102) )
                    | ( true_1 != 'StringEquals'(X101,X103) ) )
               => ( true_1 = 'StringEquals'(X101,X102) ) )
          | ~ ! [X105: $int,X106: $int,X104: $int] :
              ? [X107: $int] :
                ( ( ( true_1 = x(X106,X107) )
                 => ( X106 = X107 ) )
                & ( 'ValueArray'(X104,X105) = X107 ) )
          | ( 'IsValueType'('System_UInt16') != true_1 )
          | ( x('System_ICloneable','System_ICloneable') != true_1 )
          | ~ ! [X108: $int,X109: $int,X110: $int,X111: $int] :
                ( ~ ( ( true_1 != 'IsHeap'(X111) )
                    | ~ ( ( $true
                        <=> ( true_1 = select2(X111,'BeingConstructed','NonNullFieldsAreInitialized') ) )
                        | ( 'BeingConstructed' != X109 ) )
                    | ( nullObject = X109 ) )
               => ( nullObject != select2(X111,X109,'AsNonNullRefField'(X108,X110)) ) )
          | ~ ! [X113: $int,X112: $int] :
              ? [X114: $int] :
                ( ( ~ ( $less(0,X112)
                      | ~ $less(X113,0) )
                 => ~ ( $less(0,X114)
                      | ~ $less(X113,X114) ) )
                & ( x_2(X112,X113) = X114 ) )
          | ( 'IsValueType'('System_IntPtr') != true_1 )
          | ~ ! [X117: $int,X115: $int,X116: $int] :
                ( ( true_1 = x(X116,'IntArray'(X115,X117)) )
               => ( 'ArrayCategoryInt' = 'ArrayCategory'(X116) ) )
          | ( x('System_IConvertible','System_IConvertible') != true_1 )
          | ( 'AsInterface'('System_Collections_Generic_IEnumerable_1___System_Char') != 'System_Collections_Generic_IEnumerable_1___System_Char' )
          | ( 'IncludeInMainFrameCondition'(ownerRef) != true_1 )
          | ~ ! [X118: $int] :
                ( ( true_1 = 'InRange'(X118,'System_Int16') )
              <=> ~ ( ~ $less(X118,32768)
                    | $less(X118,$sum(0,$uminus(32768))) ) )
          | ~ ! [X119: $int,X120: $int,X121: $int] :
                ( ~ ( ( true_1 != select2(X120,X119,allocated) )
                    | ( true_1 != 'IsHeap'(X120) ) )
               => ( true_1 = select2(X120,select2(X120,X119,X121),allocated) ) )
          | ( 'System_String' != 'AsDirectSubClass'('System_String',X1) )
          | ( 'DeclType'(elements) != 'System_Object' )
          | ( 'IncludeInMainFrameCondition'(localinv) = true_1 )
          | ( 'IsNotNull'(stringLiteral0,'System_String') != true_1 )
          | ~ ! [X123: $int,X124: $int,X125: $int,X122: $int] :
              ? [X126: $int] :
                ( ~ ( ( 'UnboxedType'(X126) != X122 )
                    | ( 'Box'(X124,X126) != X126 ) )
                & ( 'BoxFunc'(X124,X122,X125,X123) = X126 ) )
          | ~ ! [X127: $int,X128: $int] :
              ? [X129: $int] :
                ( ( x_2(X127,X128) = X129 )
                & ( ~ ( ~ $less(0,X128)
                      | $less(X127,0) )
                 => ~ ( $less(X129,0)
                      | ~ $less(X129,X128) ) ) )
          | ~ ! [X130: $int] :
                ( ( true_1 = x(X130,'System_String') )
               => ( 'System_String' = X130 ) )
          | ( 'System_Object' != X1 )
          | ~ ! [X132: $int,X131: $int] :
              ? [X133: $int] :
                ( ( $sum(X132,$uminus(X131)) = X133 )
                & ( ~ ( $less(X131,0)
                      | $less(X133,0) )
                 => ( x_2(X133,X131) = x_2(X132,X131) ) ) )
          | ~ ! [X136: $int,X135: $int,X134: $int] :
                ( ( true_1 = x(X135,'AsDirectSubClass'(X136,X134)) )
               => ( 'OneClassDown'(X135,X134) = X136 ) )
          | ~ ! [X138: $int,X139: $int,X137: $int] :
                ( ( true_1 = x(X137,X138) )
               => ( true_1 = x('RefArray'(X137,X139),'RefArray'(X138,X139)) ) )
          | ~ ! [X140: $int,X141: $int,X142: $int] :
                ( ~ ( ( true_1 != x(typeof(X140),'RefArray'(X141,X142)) )
                    | ( nullObject = X140 ) )
               => ( 'Rank'(X140) = X142 ) )
          | ~ ! [X143: $int,X144: $int] : ( 'System_Object' = typeof('ElementProxy'(X144,X143)) )
          | ( x('System_String','System_IComparable_1___System_String') != true_1 )
          | ~ ! [X145: $int] :
                ( ~ ( $less(int_9223372036854775807,X145)
                    | $less(X145,int_m9223372036854775808) )
              <=> ( true_1 = 'InRange'(X145,'System_Int64') ) )
          | ~ $less(100000,int_2147483647)
          | ~ ! [X148: $int,X146: $int,X147: $int,X149: $int] : ( 'ArrayIndexInvX'('ArrayIndex'(X146,X149,X148,X147)) = X148 )
          | ~ ! [X150: $int,X151: $int] :
                ( ( true_1 = 'Is'(X150,X151) )
               => ( 'As'(X150,X151) = X150 ) )
          | ~ ! [X152: $int,X153: $int] :
              ? [X154: $int] :
                ( ( ~ ( $less(X153,0)
                      | ~ $less(X152,0) )
                 => ~ ( ~ $less(X154,$sum(0,$uminus(X152)))
                      | $less(X154,0) ) )
                & ( x_2(X153,X152) = X154 ) )
          | ~ ! [X156: $int,X157: $int,X155: $int] :
                ( ~ ( ( nullObject = X155 )
                    | ( true_1 != x(typeof(X155),'ValueArray'(X156,X157)) ) )
               => ( 'Rank'(X155) = X157 ) )
          | ( 'IsValueType'('System_Boolean') != true_1 )
          | ( 'IsStaticField'(exposeVersion) = true_1 )
          | ~ ! [X159: $int,X158: $int] :
                ( ~ $less(X158,1)
               => ( shl(X159,X158) = $product(shl(X159,$sum(X158,$uminus(1))),2) ) )
          | ( x('System_IEquatable_1___System_String','System_Object') != true_1 )
          | ~ ! [X161: $int,X160: $int] :
                ( ( true_1 = 'IsHeap'(X161) )
               => ( true_1 = select2(X161,'ClassRepr'(X160),allocated) ) )
          | ~ ! [X162: $int] : ( true_1 = 'IsNotNull'('TypeObject'(X162),'System_Type') )
          | ~ ! [X163: $int] : ( true_1 != x(typeof('ClassRepr'(X163)),'System_Object') )
          | ~ ! [X164: $int,X166: $int,X165: $int] :
                ( ( true_1 = x(X166,'ValueArray'(X164,X165)) )
               => ( 'ArrayCategoryValue' = 'ArrayCategory'(X166) ) )
          | ~ ! [X168: $int,X169: $int,X167: $int] :
              ? [X170: $int] :
                ( ( ( true_1 = x(X167,'NonNullRefArray'(X168,X169)) )
                 => ~ ( ( 'NonNullRefArray'(X170,X169) != X167 )
                      | ( X167 = X168 )
                      | ( true_1 != x(X170,X168) ) ) )
                & ( 'ElementType'(X167) = X170 ) )
          | ( x('System_IEquatable_1___System_String','System_IEquatable_1___System_String') != true_1 )
          | ~ ! [X171: $int,X172: $int] : ~ $less('DimLength'(X171,X172),0)
          | ~ ! [X173: $int,X174: $int] :
              ? [X175: $int] :
                ( ( x_2(X173,X174) = X175 )
                & ( ~ ( ~ $less(0,X174)
                      | $less(0,X173) )
                 => ~ ( ~ $less($sum(0,$uminus(X174)),X175)
                      | $less(0,X175) ) ) )
          | ( x('System_Collections_Generic_IEnumerable_1___System_Char','System_Collections_Generic_IEnumerable_1___System_Char') != true_1 )
          | ( 'IncludedInModifiesStar'(elements) != true_1 )
          | ~ ! [X176: $int] :
                ( ( true_1 = 'InRange'(X176,'System_Byte') )
              <=> ~ ( $less(X176,0)
                    | ~ $less(X176,256) ) )
          | ~ ! [X177: $int,X178: $int] :
                ( ~ ( $less(X178,0)
                    | $less(X177,0) )
               => ( x_2(X177,X178) = x_2($sum(X178,X177),X178) ) )
          | ( 'IncludeInMainFrameCondition'('FirstConsistentOwner') = true_1 )
          | ( 'IsValueType'('System_Char') != true_1 )
          | ( 'IsMemberlessType'('System_IEquatable_1___System_String') != true_1 )
          | ~ ! [X180: $int,X179: $int,X182: $int,X181: $int] :
                ( ( X180 != X181 )
               => ( 'IntArrayGet'('IntArraySet'(X182,X181,X179),X180) = 'IntArrayGet'(X182,X180) ) )
          | ( x('System_String','System_IConvertible') != true_1 )
          | ( 'IsValueType'('System_Int64') != true_1 )
          | ( 'IsStaticField'(localinv) = true_1 )
          | ~ ! [X184: $int,X185: $int,X183: $int] :
                ( ( true_1 = 'IsAllocated'(X183,X184) )
               => ( true_1 = 'IsAllocated'(X183,'StructGet'(X184,X185)) ) )
          | ~ ! [X187: $int,X186: $int] :
                ( ~ ( ( true_1 != x(typeof(X186),'System_Array') )
                    | ( true_1 != 'IsHeap'(X187) )
                    | ( true_1 != 'IsAllocated'(X187,X186) ) )
               => ( true_1 = 'IsAllocated'(X187,'ElementProxy'(X186,$sum(0,$uminus(1)))) ) )
          | ~ ! [X188: $int,X189: $int] : ( 'ElementType'('RefArray'(X188,X189)) = X188 )
          | ~ ! [X190: $int,X191: $int] : ( 'System_Object' = typeof('ElementProxyStruct'(X191,X190)) )
          | ( x('System_String','System_IComparable') != true_1 )
          | ~ ! [X192: $int] :
              ? [X193: $int] :
                ( ~ ( $less(int_2147483647,X193)
                    | $less(X193,0) )
                & ( 'Length'(X192) = X193 ) )
          | ( 'IsValueType'('System_UInt32') != true_1 )
          | ( 'IsMemberlessType'('System_IComparable_1___System_String') != true_1 )
          | ~ ! [X195: $int,X194: $int] :
              ? [X196: $int] :
                ( ~ ( ( true_1 != x(X196,X196) )
                    | ( true_1 != x(X196,'System_Array') ) )
                & ( 'ValueArray'(X195,X194) = X196 ) )
          | ~ ! [X199: $int,X197: $int,X200: $int,X198: $int] :
              ? [X201: $int] :
                ( ? [X202: $int] :
                    ( ( 'ElementProxy'(X201,X200) = X202 )
                    & ( ~ ( ( true_1 != 'IsHeap'(X197) )
                          | ( nullObject = X201 ) )
                     => ~ ( ( select2(X197,X202,ownerRef) != select2(X197,X199,ownerRef) )
                          | ( select2(X197,X202,ownerFrame) != select2(X197,X199,ownerFrame) ) ) ) )
                & ( select2(X197,X199,'AsElementsPeerField'(X198,X200)) = X201 ) )
          | ( 'AsInterface'('System_IComparable') != 'System_IComparable' )
          | ( $sum(int_m9223372036854775808,1) != $sum(0,$uminus(int_9223372036854775807)) )
          | ~ ! [X203: $int] : ( shl(X203,0) = X203 )
          | ( 'System_Object' != X0 )
          | ~ ! [X204: $int,X205: $int] :
                ( ~ ( $less(X204,0)
                    | $less(X205,0) )
               => ( x_2(X204,X205) = x_2($sum(X204,X205),X205) ) )
          | ~ ! [X206: $int] : ( 'TypeName'('TypeObject'(X206)) = X206 )
          | ( 'IncludedInModifiesStar'(exposeVersion) != true_1 )
          | ~ ! [X211: $int,X210: $int,X209: $int,X207: $int,X208: $int] :
              ? [X212: $int] :
                ( ? [X213: $int] :
                    ( ( ~ ( ( true_1 != 'IsHeap'(X208) )
                          | ( nullObject = X212 ) )
                     => ~ ( ( select2(X208,X213,ownerRef) != X211 )
                          | ( select2(X208,X213,ownerFrame) != X209 ) ) )
                    & ( 'ElementProxy'(X212,X207) = X213 ) )
                & ( select2(X208,X211,'AsElementsRepField'(X210,X209,X207)) = X212 ) )
          | ( 'AsImmutable'('System_String') != 'System_String' )
          | ( 'IsMemberlessType'('System_Collections_IEnumerable') != true_1 )
          | ~ ! [X215: $int,X214: $int] : ( 0 = 'LBound'(X214,X215) )
          | ~ ! [X216: $int] : ~ $less('Rank'(X216),1)
          | ( 'IncludeInMainFrameCondition'(exposeVersion) != true_1 )
          | ~ ! [X218: $int,X217: $int,X219: $int] :
              ? [X220: $int] :
                ( ( 'ElementType'(X219) = X220 )
                & ( ( true_1 = x('NonNullRefArray'(X218,X217),X219) )
                 => ( ( true_1 = x('System_Array',X219) )
                    | ~ ( ( true_1 != x(X218,X220) )
                        | ( 'NonNullRefArray'(X220,X217) != X219 ) ) ) ) )
          | ~ ! [X221: $int] :
                ( ( 1 = 'Rank'(X221) )
               => ( 'DimLength'(X221,0) = 'Length'(X221) ) )
          | ( 'IsValueType'('System_UInt64') != true_1 )
          | ~ ! [X223: $int,X224: $int,X222: $int] :
              ? [X225: $int] :
                ( ( 'IntArray'(X223,X222) = X225 )
                & ( ( true_1 = x(X224,X225) )
                 => ( X224 = X225 ) ) )
          | ( 'IncludeInMainFrameCondition'(inv) = true_1 )
          | ~ ! [X226: $int,X227: $int] :
              ? [X228: $int] :
                ( ( select2(X226,X227,'FirstConsistentOwner') = X228 )
                & ? [X229: $int,X230: $int,X231: $int,X232: $int] :
                    ( ( select2(X226,X227,ownerFrame) = X232 )
                    & ( select2(X226,X228,ownerRef) = X230 )
                    & ( select2(X226,X227,ownerRef) = X231 )
                    & ( select2(X226,X228,ownerFrame) = X229 )
                    & ( ~ ( ( select2(X226,X231,localinv) = 'BaseClass'(X232) )
                          | ( true_1 != 'IsHeap'(X226) )
                          | ( true_1 != x(select2(X226,X231,inv),X232) )
                          | ~ ( ( true_1 = select2(X226,X227,allocated) )
                            <=> $true )
                          | ( nullObject = X227 )
                          | ( 'PeerGroupPlaceholder' = X232 ) )
                     => ~ ( ~ ( ( true_1 != x(select2(X226,X230,inv),X229) )
                              | ( 'PeerGroupPlaceholder' = X229 )
                              | ( 'BaseClass'(X229) = select2(X226,X230,localinv) ) )
                          | ~ ( ( true_1 = select2(X226,X228,allocated) )
                            <=> $true )
                          | ( nullObject = X228 ) ) ) ) )
          | ( 'IsValueType'('System_Int32') != true_1 )
          | ~ ! [X234: $int,X236: $int,X235: $int,X233: $int] :
              ? [X237: $int] :
                ( ( ~ ( ( nullObject = X237 )
                      | ( true_1 != 'IsHeap'(X236) ) )
                 => ~ ( ( select2(X236,X237,ownerFrame) != X235 )
                      | ( select2(X236,X237,ownerRef) != X233 ) ) )
                & ( select2(X236,X233,'AsRepField'(X234,X235)) = X237 ) )
          | ~ ! [X238: $int,X239: $int] :
                ( ( true_1 = x(X238,'AsImmutable'(X239)) )
               => ~ ( ( 'AsImmutable'(X238) != X238 )
                    | ( true_1 != 'IsImmutable'(X238) ) ) )
          | ~ ! [X243: $int,X241: $int,X242: $int,X240: $int] :
                ( ( true_1 = 'IsHeap'(X240) )
               => ( true_1 = 'Is'(select2(X240,X241,'AsRefField'(X243,X242)),X242) ) )
          | ( x('System_Array','System_Object') != true_1 )
          | ~ ! [X244: $int,X246: $int,X245: $int] :
                ( ~ ( ( true_1 != 'System_String_Equals_System_String_System_String'(X245,X246,X244) )
                    | ( nullObject = X244 )
                    | ( nullObject = X246 ) )
               => ( 'System_String_IsInterned_System_String_notnull'(X245,X244) = 'System_String_IsInterned_System_String_notnull'(X245,X246) ) )
          | ~ ! [X247: $int,X248: $int] :
                ( ( 'AsNonNullRefField'(X248,X247) = X248 )
               => ( 'AsRefField'(X248,X247) = X248 ) )
          | ( 'DeclType'(exposeVersion) != 'System_Object' )
          | ~ ! [X251: $int,X250: $int,X249: $int] : ( 'IntArrayGet'('IntArraySet'(X250,X251,X249),X251) = X249 )
          | ( 'IsValueType'('System_SByte') != true_1 )
          | ~ ! [X252: $int,X253: $int,X254: $int] : ( 'RefArrayGet'('RefArraySet'(X252,X253,X254),X253) = X254 )
          | ( x('System_IComparable_1___System_String','System_Object') != true_1 )
          | ~ ! [X256: $int,X255: $int,X257: $int] :
                ( ( true_1 = x(X256,'RefArray'(X255,X257)) )
               => ( 'ArrayCategoryRef' = 'ArrayCategory'(X256) ) )
          | ~ ! [X261: $int,X258: $int,X260: $int,X259: $int] :
                ( ( X258 != X260 )
               => ( 'StructGet'('StructSet'(X259,X258,X261),X260) = 'StructGet'(X259,X260) ) )
          | ~ ! [X262: $int,X264: $int,X263: $int] :
              ? [X265: $int] :
                ( ( 'ElementType'(X262) = X265 )
                & ( ( true_1 = x('RefArray'(X263,X264),X262) )
                 => ( ~ ( ( true_1 != x(X263,X265) )
                        | ( 'RefArray'(X265,X264) != X262 ) )
                    | ( true_1 = x('System_Array',X262) ) ) ) )
          | ~ ! [X266: $int] :
                ( ( true_1 = 'InRange'(X266,'System_UInt16') )
              <=> ~ ( ~ $less(X266,65536)
                    | $less(X266,0) ) )
          | ~ ! [X267: $int] : ( 'ClassReprInv'('ClassRepr'(X267)) = X267 )
          | ~ ! [X268: $int,X269: $int] :
                ( ~ ( ( true_1 != x(select2(X268,X269,inv),'Factorial') )
                    | ( true_1 != 'IsHeap'(X268) )
                    | ( select2(X268,X269,localinv) = X0 ) )
               => $true )
          | ( 'IncludeInMainFrameCondition'(elements) != true_1 )
          | ( x('System_IComparable','System_Object') != true_1 )
          | ~ ! [X271: $int,X270: $int] :
                ( ~ ( ( true_1 != x(typeof(X270),'AsImmutable'(X271)) )
                    | ( 'BeingConstructed' = X270 )
                    | ( nullObject = X270 ) )
               => ! [X272: $int] :
                  ? [X273: $int] :
                    ( ( ( true_1 = 'IsHeap'(X272) )
                     => ~ ( ~ ! [X274: $int] :
                                ( ( 'AsOwner'(X270,select2(X272,X274,ownerRef)) = X270 )
                               => ( ( 'PeerGroupPlaceholder' != select2(X272,X274,ownerFrame) )
                                  | ( X270 = X274 ) ) )
                          | ( select2(X272,X270,localinv) != X273 )
                          | ( select2(X272,X270,inv) != X273 )
                          | ( 'PeerGroupPlaceholder' != select2(X272,X270,ownerFrame) )
                          | ( 'AsOwner'(X270,select2(X272,X270,ownerRef)) != X270 ) ) )
                    & ( typeof(X270) = X273 ) ) )
          | ~ ( ( 'ArrayCategoryValue' != 'System_Int32' )
              & ( allocated != 'FirstConsistentOwner' )
              & ( 'ArrayCategoryValue' != 'System_IComparable_1___System_String' )
              & ( 'System_Int16' != 'System_UInt32' )
              & ( 'System_SByte' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( elements != 'System_Char' )
              & ( elements != 'System_IntPtr' )
              & ( 'System_Array' != 'System_Char' )
              & ( localinv != 'FirstConsistentOwner' )
              & ( 'ArrayCategoryValue' != 'System_UInt32' )
              & ( sharingMode != 'System_Collections_IEnumerable' )
              & ( 'System_Array' != 'System_Int64' )
              & ( exposeVersion != 'System_Byte' )
              & ( 'System_IConvertible' != 'System_IEquatable_1___System_String' )
              & ( 'NonNullFieldsAreInitialized' != 'System_IntPtr' )
              & ( exposeVersion != 'System_Int16' )
              & ( inv != 'System_SByte' )
              & ( ownerRef != 'Factorial' )
              & ( ownerRef != 'System_UInt16' )
              & ( allocated != stringLiteral0 )
              & ( 'System_UInt32' != 'System_IConvertible' )
              & ( 'SharingMode_LockProtected' != 'FirstConsistentOwner' )
              & ( localinv != 'ArrayCategoryRef' )
              & ( 'System_SByte' != 'System_IComparable' )
              & ( 'SharingMode_Unshared' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'ArrayCategoryValue' != 'System_Int64' )
              & ( ownerRef != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryValue' != 'System_Int16' )
              & ( 'System_Boolean' != 'System_Int32' )
              & ( 'FirstConsistentOwner' != 'System_ICloneable' )
              & ( localinv != 'ArrayCategoryInt' )
              & ( exposeVersion != 'System_Boolean' )
              & ( 'System_Object' != 'System_Byte' )
              & ( 'System_Type' != 'System_IComparable_1___System_String' )
              & ( 'System_IntPtr' != 'System_IComparable' )
              & ( 'SharingMode_Unshared' != 'System_Int16' )
              & ( 'SharingMode_Unshared' != 'System_Object' )
              & ( 'SharingMode_LockProtected' != 'System_String' )
              & ( elements != 'System_Object' )
              & ( 'System_IComparable_1___System_String' != 'Factorial' )
              & ( inv != 'Factorial' )
              & ( 'System_UInt16' != 'System_Int64' )
              & ( ownerFrame != 'System_IntPtr' )
              & ( inv != 'System_Int64' )
              & ( 'ArrayCategoryInt' != 'System_UInt16' )
              & ( sharingMode != 'System_Int64' )
              & ( 'NonNullFieldsAreInitialized' != 'System_Int32' )
              & ( allocated != 'System_Int64' )
              & ( 'System_IntPtr' != 'System_ICloneable' )
              & ( inv != 'NonNullFieldsAreInitialized' )
              & ( allocated != 'System_Array' )
              & ( 'System_Char' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( sharingMode != 'System_IComparable' )
              & ( 'System_Type' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( sharingMode != 'SharingMode_LockProtected' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Char' )
              & ( 'System_Type' != 'System_Int64' )
              & ( 'System_Boolean' != 'System_Type' )
              & ( 'ArrayCategoryInt' != stringLiteral0 )
              & ( 'ArrayCategoryNonNullRef' != 'System_UInt16' )
              & ( 'System_UInt16' != 'System_IEquatable_1___System_String' )
              & ( 'FirstConsistentOwner' != stringLiteral0 )
              & ( 'SharingMode_Unshared' != 'System_SByte' )
              & ( elements != 'System_UInt32' )
              & ( ownerFrame != stringLiteral0 )
              & ( 'PeerGroupPlaceholder' != 'System_Array' )
              & ( localinv != 'PeerGroupPlaceholder' )
              & ( 'System_Object' != 'System_IComparable' )
              & ( 'ArrayCategoryRef' != 'System_Byte' )
              & ( 'SharingMode_Unshared' != 'System_String' )
              & ( exposeVersion != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Boolean' != 'System_IEquatable_1___System_String' )
              & ( 'System_Int16' != 'System_IComparable' )
              & ( 'System_Int16' != 'System_IntPtr' )
              & ( elements != 'System_Int32' )
              & ( 'System_String' != 'System_UInt16' )
              & ( allocated != 'System_Object' )
              & ( 'System_Boolean' != stringLiteral0 )
              & ( 'ArrayCategoryNonNullRef' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_SByte' != 'System_Collections_IEnumerable' )
              & ( 'SharingMode_LockProtected' != 'System_Object' )
              & ( localinv != 'System_UInt32' )
              & ( 'ArrayCategoryRef' != 'System_UIntPtr' )
              & ( 'SharingMode_Unshared' != 'System_Byte' )
              & ( 'NonNullFieldsAreInitialized' != 'System_IComparable' )
              & ( 'NonNullFieldsAreInitialized' != 'System_UInt64' )
              & ( 'System_Int32' != 'System_IComparable' )
              & ( 'System_Boolean' != 'System_Byte' )
              & ( sharingMode != 'System_IConvertible' )
              & ( 'SharingMode_Unshared' != ownerFrame )
              & ( exposeVersion != 'System_ICloneable' )
              & ( 'ArrayCategoryRef' != 'System_Char' )
              & ( 'System_IComparable' != 'Factorial' )
              & ( allocated != ownerFrame )
              & ( ownerFrame != 'System_Type' )
              & ( 'System_Type' != 'System_Char' )
              & ( 'System_Boolean' != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryInt' != 'System_SByte' )
              & ( 'NonNullFieldsAreInitialized' != 'System_IConvertible' )
              & ( 'ArrayCategoryInt' != 'System_Byte' )
              & ( 'ArrayCategoryValue' != 'System_UInt16' )
              & ( elements != 'ArrayCategoryInt' )
              & ( 'NonNullFieldsAreInitialized' != 'System_Char' )
              & ( 'System_Byte' != 'System_ICloneable' )
              & ( localinv != 'ArrayCategoryNonNullRef' )
              & ( 'ArrayCategoryRef' != 'NonNullFieldsAreInitialized' )
              & ( 'System_UInt16' != stringLiteral0 )
              & ( ownerRef != 'System_Char' )
              & ( 'System_SByte' != 'System_Int64' )
              & ( allocated != 'System_SByte' )
              & ( 'System_Byte' != 'System_IComparable' )
              & ( elements != 'NonNullFieldsAreInitialized' )
              & ( ownerRef != 'System_SByte' )
              & ( 'SharingMode_LockProtected' != 'System_ICloneable' )
              & ( sharingMode != 'System_UInt64' )
              & ( 'System_Boolean' != 'System_IConvertible' )
              & ( 'System_Boolean' != 'System_UInt64' )
              & ( 'System_Array' != 'System_Int32' )
              & ( allocated != 'SharingMode_LockProtected' )
              & ( 'PeerGroupPlaceholder' != 'System_Int16' )
              & ( 'System_Int64' != 'Factorial' )
              & ( 'ArrayCategoryRef' != 'System_Int16' )
              & ( exposeVersion != 'System_SByte' )
              & ( 'System_String' != 'System_IComparable' )
              & ( 'NonNullFieldsAreInitialized' != 'FirstConsistentOwner' )
              & ( ownerFrame != 'ArrayCategoryRef' )
              & ( inv != 'PeerGroupPlaceholder' )
              & ( sharingMode != 'System_SByte' )
              & ( sharingMode != 'System_Char' )
              & ( 'ArrayCategoryValue' != 'System_IEquatable_1___System_String' )
              & ( sharingMode != 'ArrayCategoryInt' )
              & ( 'System_Int32' != 'System_IComparable_1___System_String' )
              & ( 'System_Type' != stringLiteral0 )
              & ( 'PeerGroupPlaceholder' != 'System_UInt64' )
              & ( 'ArrayCategoryValue' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Boolean' != 'System_Int16' )
              & ( localinv != 'Factorial' )
              & ( 'System_Collections_IEnumerable' != stringLiteral0 )
              & ( 'ArrayCategoryInt' != 'ArrayCategoryNonNullRef' )
              & ( elements != exposeVersion )
              & ( 'ArrayCategoryValue' != 'Factorial' )
              & ( inv != 'System_UInt16' )
              & ( 'System_Int32' != 'System_Int64' )
              & ( 'System_Int64' != stringLiteral0 )
              & ( 'SharingMode_LockProtected' != 'System_Collections_IEnumerable' )
              & ( 'System_Int16' != 'System_Int64' )
              & ( elements != 'SharingMode_Unshared' )
              & ( 'PeerGroupPlaceholder' != 'System_Int32' )
              & ( inv != 'System_Type' )
              & ( ownerRef != 'System_UInt64' )
              & ( 'ArrayCategoryInt' != 'NonNullFieldsAreInitialized' )
              & ( exposeVersion != 'ArrayCategoryNonNullRef' )
              & ( localinv != ownerFrame )
              & ( 'SharingMode_Unshared' != 'System_IConvertible' )
              & ( sharingMode != 'System_Array' )
              & ( 'System_Int16' != 'System_Collections_IEnumerable' )
              & ( 'SharingMode_LockProtected' != 'System_IComparable_1___System_String' )
              & ( 'PeerGroupPlaceholder' != 'System_Collections_IEnumerable' )
              & ( localinv != 'SharingMode_Unshared' )
              & ( 'System_Object' != 'System_IConvertible' )
              & ( localinv != 'System_String' )
              & ( ownerRef != 'System_UInt32' )
              & ( exposeVersion != stringLiteral0 )
              & ( 'System_Int16' != 'Factorial' )
              & ( 'System_Byte' != 'System_UIntPtr' )
              & ( 'NonNullFieldsAreInitialized' != 'System_SByte' )
              & ( 'System_Char' != 'Factorial' )
              & ( allocated != 'PeerGroupPlaceholder' )
              & ( 'ArrayCategoryRef' != 'System_IComparable_1___System_String' )
              & ( 'System_IComparable_1___System_String' != 'System_IComparable' )
              & ( inv != 'System_UInt64' )
              & ( 'SharingMode_LockProtected' != 'System_IEquatable_1___System_String' )
              & ( 'ArrayCategoryValue' != 'System_Collections_IEnumerable' )
              & ( 'System_UInt32' != 'System_IntPtr' )
              & ( elements != 'System_IComparable_1___System_String' )
              & ( allocated != 'System_UInt64' )
              & ( 'System_Char' != 'System_IComparable_1___System_String' )
              & ( inv != 'System_Array' )
              & ( 'System_Array' != 'System_Int16' )
              & ( sharingMode != 'System_Int32' )
              & ( 'System_UIntPtr' != 'System_IConvertible' )
              & ( 'System_Boolean' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Char' != stringLiteral0 )
              & ( elements != 'System_IEquatable_1___System_String' )
              & ( 'System_Byte' != 'System_UInt32' )
              & ( localinv != 'System_Array' )
              & ( localinv != sharingMode )
              & ( 'FirstConsistentOwner' != 'System_IntPtr' )
              & ( 'SharingMode_Unshared' != 'System_UInt32' )
              & ( 'System_Int64' != 'System_UIntPtr' )
              & ( inv != 'ArrayCategoryInt' )
              & ( exposeVersion != 'System_Array' )
              & ( 'ArrayCategoryNonNullRef' != 'System_IComparable' )
              & ( 'System_Int64' != 'System_IntPtr' )
              & ( allocated != 'System_ICloneable' )
              & ( ownerRef != 'ArrayCategoryRef' )
              & ( 'System_Int16' != 'System_IEquatable_1___System_String' )
              & ( localinv != 'System_UIntPtr' )
              & ( 'ArrayCategoryValue' != 'FirstConsistentOwner' )
              & ( 'ArrayCategoryValue' != 'System_SByte' )
              & ( sharingMode != 'System_IComparable_1___System_String' )
              & ( 'System_Int32' != 'System_ICloneable' )
              & ( 'SharingMode_Unshared' != 'System_IComparable_1___System_String' )
              & ( 'SharingMode_LockProtected' != 'ArrayCategoryNonNullRef' )
              & ( 'System_UInt16' != 'System_ICloneable' )
              & ( 'PeerGroupPlaceholder' != 'FirstConsistentOwner' )
              & ( 'System_IComparable_1___System_String' != 'System_Collections_IEnumerable' )
              & ( 'System_Char' != 'System_IConvertible' )
              & ( ownerFrame != 'Factorial' )
              & ( exposeVersion != 'SharingMode_LockProtected' )
              & ( 'SharingMode_Unshared' != 'System_Collections_IEnumerable' )
              & ( 'SharingMode_LockProtected' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_UIntPtr' != stringLiteral0 )
              & ( 'FirstConsistentOwner' != 'System_Collections_IEnumerable' )
              & ( sharingMode != ownerRef )
              & ( 'PeerGroupPlaceholder' != 'NonNullFieldsAreInitialized' )
              & ( 'System_UInt16' != 'System_UIntPtr' )
              & ( localinv != 'System_UInt16' )
              & ( 'SharingMode_Unshared' != 'ArrayCategoryNonNullRef' )
              & ( 'System_IConvertible' != 'System_IComparable' )
              & ( exposeVersion != 'FirstConsistentOwner' )
              & ( 'ArrayCategoryRef' != 'FirstConsistentOwner' )
              & ( 'System_UIntPtr' != 'System_IntPtr' )
              & ( ownerFrame != 'System_String' )
              & ( 'System_UIntPtr' != 'System_IComparable_1___System_String' )
              & ( 'ArrayCategoryValue' != 'System_Char' )
              & ( localinv != 'System_IComparable' )
              & ( allocated != 'System_UIntPtr' )
              & ( 'System_Int32' != 'System_Collections_IEnumerable' )
              & ( 'System_SByte' != 'System_UIntPtr' )
              & ( ownerFrame != 'System_Char' )
              & ( allocated != 'ArrayCategoryRef' )
              & ( ownerFrame != 'System_UIntPtr' )
              & ( 'System_Int64' != 'System_IComparable' )
              & ( allocated != 'System_IComparable_1___System_String' )
              & ( 'Factorial' != 'System_Collections_IEnumerable' )
              & ( allocated != 'System_Type' )
              & ( 'System_ICloneable' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Object' != 'System_UInt64' )
              & ( localinv != 'ArrayCategoryValue' )
              & ( 'System_UInt32' != 'System_Char' )
              & ( 'System_Boolean' != 'System_UInt32' )
              & ( ownerFrame != 'System_ICloneable' )
              & ( 'System_UInt64' != 'System_IEquatable_1___System_String' )
              & ( sharingMode != 'FirstConsistentOwner' )
              & ( ownerFrame != 'System_Int64' )
              & ( allocated != 'System_UInt16' )
              & ( 'System_Int16' != 'System_UInt16' )
              & ( allocated != 'System_IEquatable_1___System_String' )
              & ( 'System_Object' != 'System_IEquatable_1___System_String' )
              & ( 'ArrayCategoryInt' != 'System_UInt64' )
              & ( ownerRef != 'System_IConvertible' )
              & ( allocated != 'System_IConvertible' )
              & ( inv != 'SharingMode_LockProtected' )
              & ( 'FirstConsistentOwner' != 'System_UIntPtr' )
              & ( 'System_UInt16' != 'System_Collections_IEnumerable' )
              & ( 'System_Int32' != 'System_UInt32' )
              & ( 'System_UInt16' != 'System_IComparable_1___System_String' )
              & ( 'PeerGroupPlaceholder' != 'Factorial' )
              & ( elements != 'System_IConvertible' )
              & ( allocated != 'SharingMode_Unshared' )
              & ( 'System_Type' != 'System_String' )
              & ( inv != 'ArrayCategoryRef' )
              & ( 'ArrayCategoryNonNullRef' != 'System_IEquatable_1___System_String' )
              & ( elements != 'FirstConsistentOwner' )
              & ( 'System_UInt16' != 'System_Char' )
              & ( 'SharingMode_LockProtected' != 'System_Byte' )
              & ( 'System_Object' != 'System_String' )
              & ( elements != 'System_Byte' )
              & ( exposeVersion != 'System_IComparable_1___System_String' )
              & ( 'System_String' != 'System_IEquatable_1___System_String' )
              & ( 'System_Boolean' != 'System_IComparable_1___System_String' )
              & ( 'System_Array' != 'System_UInt32' )
              & ( 'System_Object' != 'System_UInt16' )
              & ( ownerRef != 'System_Int16' )
              & ( 'System_String' != 'FirstConsistentOwner' )
              & ( 'System_Array' != 'System_IComparable_1___System_String' )
              & ( 'ArrayCategoryValue' != stringLiteral0 )
              & ( 'ArrayCategoryValue' != 'NonNullFieldsAreInitialized' )
              & ( exposeVersion != 'System_UIntPtr' )
              & ( 'System_Int32' != 'System_Char' )
              & ( localinv != 'NonNullFieldsAreInitialized' )
              & ( 'NonNullFieldsAreInitialized' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_IComparable' != stringLiteral0 )
              & ( inv != 'ArrayCategoryValue' )
              & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_Collections_IEnumerable' )
              & ( 'System_Object' != 'FirstConsistentOwner' )
              & ( 'ArrayCategoryRef' != 'System_Type' )
              & ( 'System_Int32' != 'System_UInt64' )
              & ( ownerFrame != 'System_Int16' )
              & ( 'System_Type' != 'System_UInt32' )
              & ( 'System_Byte' != 'System_IComparable_1___System_String' )
              & ( 'System_String' != 'System_Int64' )
              & ( 'System_String' != 'System_IntPtr' )
              & ( 'System_Type' != 'System_UInt64' )
              & ( exposeVersion != 'SharingMode_Unshared' )
              & ( 'ArrayCategoryInt' != 'System_UIntPtr' )
              & ( ownerRef != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'ArrayCategoryInt' != 'System_Int16' )
              & ( elements != localinv )
              & ( 'ArrayCategoryNonNullRef' != 'System_ICloneable' )
              & ( 'System_UInt64' != 'System_IComparable_1___System_String' )
              & ( 'PeerGroupPlaceholder' != 'System_String' )
              & ( 'ArrayCategoryInt' != 'System_IConvertible' )
              & ( 'System_String' != 'System_UInt32' )
              & ( 'SharingMode_Unshared' != 'System_UIntPtr' )
              & ( 'System_Type' != 'System_Byte' )
              & ( 'System_Array' != 'System_UIntPtr' )
              & ( 'SharingMode_Unshared' != 'System_Boolean' )
              & ( elements != ownerFrame )
              & ( inv != 'System_Object' )
              & ( inv != 'SharingMode_Unshared' )
              & ( 'ArrayCategoryRef' != 'System_UInt32' )
              & ( 'System_SByte' != 'System_IComparable_1___System_String' )
              & ( 'System_UIntPtr' != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_Unshared' != 'NonNullFieldsAreInitialized' )
              & ( 'SharingMode_LockProtected' != 'System_Boolean' )
              & ( allocated != exposeVersion )
              & ( localinv != 'System_IConvertible' )
              & ( 'PeerGroupPlaceholder' != 'System_IComparable_1___System_String' )
              & ( 'System_Array' != 'System_SByte' )
              & ( allocated != 'System_Boolean' )
              & ( 'System_Byte' != stringLiteral0 )
              & ( 'ArrayCategoryInt' != 'System_IComparable' )
              & ( 'ArrayCategoryNonNullRef' != 'FirstConsistentOwner' )
              & ( 'System_Byte' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_String' != 'System_IComparable_1___System_String' )
              & ( allocated != 'NonNullFieldsAreInitialized' )
              & ( 'System_Int64' != 'System_ICloneable' )
              & ( 'System_Array' != 'System_Type' )
              & ( ownerRef != 'System_Int64' )
              & ( 'System_Array' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( exposeVersion != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_Unshared' != 'System_Int64' )
              & ( localinv != ownerRef )
              & ( 'PeerGroupPlaceholder' != 'System_Byte' )
              & ( sharingMode != 'System_UInt16' )
              & ( elements != ownerRef )
              & ( 'SharingMode_LockProtected' != 'System_Int16' )
              & ( 'System_IEquatable_1___System_String' != 'System_Collections_IEnumerable' )
              & ( 'FirstConsistentOwner' != 'System_IComparable' )
              & ( exposeVersion != 'ArrayCategoryValue' )
              & ( 'System_IEquatable_1___System_String' != 'Factorial' )
              & ( ownerFrame != 'System_Int32' )
              & ( 'System_Array' != 'Factorial' )
              & ( localinv != 'System_SByte' )
              & ( inv != stringLiteral0 )
              & ( 'FirstConsistentOwner' != 'System_SByte' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Object' )
              & ( exposeVersion != 'System_Char' )
              & ( 'System_UInt16' != 'System_IntPtr' )
              & ( 'System_Object' != 'NonNullFieldsAreInitialized' )
              & ( 'PeerGroupPlaceholder' != 'System_UInt32' )
              & ( 'System_SByte' != stringLiteral0 )
              & ( 'FirstConsistentOwner' != 'Factorial' )
              & ( 'System_Array' != 'System_UInt16' )
              & ( 'SharingMode_LockProtected' != 'System_UInt64' )
              & ( 'System_Type' != 'System_ICloneable' )
              & ( 'System_SByte' != 'System_Int32' )
              & ( 'ArrayCategoryValue' != 'ArrayCategoryNonNullRef' )
              & ( 'System_SByte' != 'System_UInt64' )
              & ( 'ArrayCategoryValue' != 'ArrayCategoryRef' )
              & ( 'System_Char' != 'System_UIntPtr' )
              & ( 'ArrayCategoryInt' != 'System_ICloneable' )
              & ( allocated != 'ArrayCategoryValue' )
              & ( 'System_UIntPtr' != 'Factorial' )
              & ( inv != 'System_ICloneable' )
              & ( 'System_SByte' != 'System_IConvertible' )
              & ( exposeVersion != 'System_Object' )
              & ( ownerFrame != 'System_IComparable_1___System_String' )
              & ( 'ArrayCategoryInt' != 'System_Collections_IEnumerable' )
              & ( 'System_IEquatable_1___System_String' != 'System_IComparable_1___System_String' )
              & ( 'ArrayCategoryNonNullRef' != 'System_UIntPtr' )
              & ( 'ArrayCategoryRef' != 'System_SByte' )
              & ( localinv != 'System_Object' )
              & ( 'System_Array' != 'System_Byte' )
              & ( 'System_SByte' != 'System_Byte' )
              & ( 'System_Object' != 'System_UInt32' )
              & ( 'FirstConsistentOwner' != 'System_UInt64' )
              & ( 'ArrayCategoryInt' != 'System_UInt32' )
              & ( ownerRef != 'System_UIntPtr' )
              & ( sharingMode != 'PeerGroupPlaceholder' )
              & ( ownerRef != 'System_IntPtr' )
              & ( allocated != 'System_Byte' )
              & ( 'PeerGroupPlaceholder' != 'System_UIntPtr' )
              & ( 'SharingMode_LockProtected' != stringLiteral0 )
              & ( elements != 'System_UInt64' )
              & ( 'System_Char' != 'System_Collections_IEnumerable' )
              & ( 'System_Int32' != 'System_UIntPtr' )
              & ( 'PeerGroupPlaceholder' != 'System_Boolean' )
              & ( 'System_Type' != 'FirstConsistentOwner' )
              & ( allocated != 'ArrayCategoryNonNullRef' )
              & ( 'System_UInt32' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( exposeVersion != 'Factorial' )
              & ( 'SharingMode_LockProtected' != 'NonNullFieldsAreInitialized' )
              & ( 'System_Type' != 'System_Collections_IEnumerable' )
              & ( elements != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Object' != 'System_IComparable_1___System_String' )
              & ( 'System_Int32' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( sharingMode != 'System_IEquatable_1___System_String' )
              & ( ownerFrame != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_LockProtected' != 'System_UInt16' )
              & ( 'System_IComparable_1___System_String' != stringLiteral0 )
              & ( 'FirstConsistentOwner' != 'System_UInt16' )
              & ( 'ArrayCategoryValue' != 'System_String' )
              & ( 'System_IEquatable_1___System_String' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( ownerFrame != 'System_Byte' )
              & ( 'System_Object' != 'System_SByte' )
              & ( 'ArrayCategoryValue' != 'System_IntPtr' )
              & ( elements != 'System_SByte' )
              & ( 'System_Char' != 'System_IComparable' )
              & ( 'NonNullFieldsAreInitialized' != 'System_String' )
              & ( 'System_UInt16' != 'Factorial' )
              & ( 'ArrayCategoryRef' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( exposeVersion != 'System_Int32' )
              & ( 'ArrayCategoryValue' != 'System_UInt64' )
              & ( exposeVersion != 'System_Collections_IEnumerable' )
              & ( 'SharingMode_LockProtected' != 'ArrayCategoryValue' )
              & ( 'System_UIntPtr' != 'System_Collections_IEnumerable' )
              & ( 'System_Byte' != 'System_IEquatable_1___System_String' )
              & ( 'System_IEquatable_1___System_String' != stringLiteral0 )
              & ( elements != 'System_Int16' )
              & ( 'System_Boolean' != 'Factorial' )
              & ( inv != 'ArrayCategoryNonNullRef' )
              & ( localinv != 'System_Boolean' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Type' )
              & ( 'FirstConsistentOwner' != 'System_Int32' )
              & ( sharingMode != 'System_String' )
              & ( 'ArrayCategoryValue' != 'ArrayCategoryInt' )
              & ( 'PeerGroupPlaceholder' != 'System_Object' )
              & ( 'System_String' != 'System_UIntPtr' )
              & ( 'ArrayCategoryInt' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( allocated != 'Factorial' )
              & ( 'ArrayCategoryRef' != 'System_UInt64' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Int32' )
              & ( 'System_Array' != 'System_IConvertible' )
              & ( inv != ownerFrame )
              & ( allocated != 'System_Int32' )
              & ( 'ArrayCategoryInt' != 'Factorial' )
              & ( 'SharingMode_Unshared' != 'System_IntPtr' )
              & ( inv != 'System_IComparable_1___System_String' )
              & ( ownerRef != 'ArrayCategoryNonNullRef' )
              & ( 'ArrayCategoryInt' != 'ArrayCategoryRef' )
              & ( allocated != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Int16' != 'System_Char' )
              & ( ownerFrame != 'System_Object' )
              & ( 'System_Object' != 'System_UIntPtr' )
              & ( 'System_Byte' != 'System_Collections_IEnumerable' )
              & ( 'System_Boolean' != 'System_SByte' )
              & ( sharingMode != 'SharingMode_Unshared' )
              & ( 'System_IntPtr' != 'Factorial' )
              & ( ownerFrame != 'FirstConsistentOwner' )
              & ( 'System_IConvertible' != 'System_Collections_IEnumerable' )
              & ( 'SharingMode_Unshared' != 'System_ICloneable' )
              & ( ownerRef != stringLiteral0 )
              & ( 'ArrayCategoryRef' != 'System_UInt16' )
              & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'Factorial' )
              & ( 'System_Type' != 'System_Int16' )
              & ( inv != 'System_UInt32' )
              & ( ownerFrame != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_UInt32' != 'System_IComparable_1___System_String' )
              & ( 'FirstConsistentOwner' != 'System_Int64' )
              & ( 'ArrayCategoryRef' != 'Factorial' )
              & ( 'System_Int64' != 'System_IComparable_1___System_String' )
              & ( 'System_Array' != 'System_IEquatable_1___System_String' )
              & ( inv != exposeVersion )
              & ( sharingMode != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( allocated != 'System_String' )
              & ( allocated != 'System_Collections_IEnumerable' )
              & ( inv != 'System_Collections_IEnumerable' )
              & ( 'System_String' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'FirstConsistentOwner' != 'System_Int16' )
              & ( 'NonNullFieldsAreInitialized' != 'System_UInt16' )
              & ( 'System_Type' != 'Factorial' )
              & ( 'ArrayCategoryInt' != 'System_String' )
              & ( inv != 'System_IConvertible' )
              & ( 'System_String' != 'System_SByte' )
              & ( 'PeerGroupPlaceholder' != 'System_IConvertible' )
              & ( sharingMode != ownerFrame )
              & ( 'SharingMode_LockProtected' != 'System_IComparable' )
              & ( elements != 'System_Int64' )
              & ( 'ArrayCategoryInt' != 'System_IComparable_1___System_String' )
              & ( exposeVersion != 'PeerGroupPlaceholder' )
              & ( 'ArrayCategoryNonNullRef' != 'System_UInt32' )
              & ( inv != 'FirstConsistentOwner' )
              & ( 'SharingMode_Unshared' != 'ArrayCategoryInt' )
              & ( 'System_UInt32' != 'System_UInt64' )
              & ( 'System_Byte' != 'System_Int16' )
              & ( sharingMode != 'System_Byte' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Byte' )
              & ( ownerFrame != 'System_UInt64' )
              & ( ownerFrame != 'NonNullFieldsAreInitialized' )
              & ( 'System_Int16' != 'System_IComparable_1___System_String' )
              & ( 'SharingMode_Unshared' != 'Factorial' )
              & ( 'SharingMode_LockProtected' != 'System_Char' )
              & ( 'System_UInt32' != 'Factorial' )
              & ( sharingMode != 'ArrayCategoryNonNullRef' )
              & ( 'System_Type' != 'System_IntPtr' )
              & ( 'SharingMode_Unshared' != 'System_Char' )
              & ( 'ArrayCategoryInt' != 'System_Type' )
              & ( 'System_Int32' != 'System_IConvertible' )
              & ( 'PeerGroupPlaceholder' != 'System_Char' )
              & ( 'System_Object' != 'System_Collections_IEnumerable' )
              & ( 'System_ICloneable' != 'Factorial' )
              & ( elements != 'ArrayCategoryValue' )
              & ( 'System_SByte' != 'System_IntPtr' )
              & ( ownerFrame != 'System_SByte' )
              & ( 'System_Int64' != 'System_IConvertible' )
              & ( 'System_Byte' != 'System_Int32' )
              & ( 'SharingMode_LockProtected' != 'PeerGroupPlaceholder' )
              & ( ownerFrame != 'System_UInt32' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Int64' )
              & ( 'ArrayCategoryRef' != stringLiteral0 )
              & ( 'PeerGroupPlaceholder' != 'System_Int64' )
              & ( localinv != 'System_Char' )
              & ( 'PeerGroupPlaceholder' != 'System_IComparable' )
              & ( 'System_IEquatable_1___System_String' != 'System_IComparable' )
              & ( 'FirstConsistentOwner' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( allocated != 'System_Char' )
              & ( 'System_Array' != 'System_String' )
              & ( 'System_Int64' != 'System_UInt64' )
              & ( 'System_UInt64' != stringLiteral0 )
              & ( 'SharingMode_LockProtected' != 'System_Type' )
              & ( localinv != 'System_ICloneable' )
              & ( localinv != 'System_Int64' )
              & ( 'System_UIntPtr' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'SharingMode_LockProtected' != 'System_IntPtr' )
              & ( 'System_UInt32' != 'System_UIntPtr' )
              & ( inv != localinv )
              & ( exposeVersion != 'ArrayCategoryRef' )
              & ( exposeVersion != 'ArrayCategoryInt' )
              & ( 'ArrayCategoryRef' != 'System_Object' )
              & ( exposeVersion != 'System_Type' )
              & ( exposeVersion != 'System_UInt64' )
              & ( 'System_Array' != 'System_IntPtr' )
              & ( sharingMode != stringLiteral0 )
              & ( localinv != 'System_Int16' )
              & ( 'System_UIntPtr' != 'System_ICloneable' )
              & ( allocated != sharingMode )
              & ( 'PeerGroupPlaceholder' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( ownerRef != 'System_String' )
              & ( 'System_Boolean' != 'System_IntPtr' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Int16' )
              & ( 'ArrayCategoryInt' != 'FirstConsistentOwner' )
              & ( elements != stringLiteral0 )
              & ( 'System_Type' != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_LockProtected' != 'ArrayCategoryRef' )
              & ( ownerFrame != 'ArrayCategoryInt' )
              & ( 'System_Object' != 'System_Int16' )
              & ( elements != 'PeerGroupPlaceholder' )
              & ( exposeVersion != sharingMode )
              & ( exposeVersion != ownerFrame )
              & ( sharingMode != 'System_Boolean' )
              & ( 'System_Int64' != 'System_Char' )
              & ( 'System_ICloneable' != 'System_IComparable' )
              & ( elements != 'System_Array' )
              & ( 'System_Int16' != 'System_Int32' )
              & ( allocated != localinv )
              & ( ownerFrame != 'ArrayCategoryValue' )
              & ( allocated != ownerRef )
              & ( 'System_String' != 'System_Collections_IEnumerable' )
              & ( 'System_Type' != 'System_IComparable' )
              & ( 'System_SByte' != 'System_ICloneable' )
              & ( localinv != 'System_Byte' )
              & ( 'System_UInt64' != 'System_IntPtr' )
              & ( 'System_Array' != 'System_IComparable' )
              & ( allocated != 'System_UInt32' )
              & ( elements != 'ArrayCategoryRef' )
              & ( 'System_UInt64' != 'System_Char' )
              & ( 'System_Char' != 'System_IEquatable_1___System_String' )
              & ( 'System_Char' != 'System_IntPtr' )
              & ( 'System_Type' != 'NonNullFieldsAreInitialized' )
              & ( ownerRef != ownerFrame )
              & ( 'SharingMode_Unshared' != 'ArrayCategoryRef' )
              & ( 'FirstConsistentOwner' != 'System_IConvertible' )
              & ( 'ArrayCategoryRef' != 'System_IEquatable_1___System_String' )
              & ( 'System_Int16' != 'System_UInt64' )
              & ( sharingMode != 'System_Type' )
              & ( elements != 'ArrayCategoryNonNullRef' )
              & ( 'System_Byte' != 'System_Int64' )
              & ( 'SharingMode_Unshared' != 'SharingMode_LockProtected' )
              & ( 'ArrayCategoryValue' != 'System_Boolean' )
              & ( 'System_Byte' != 'System_Char' )
              & ( 'System_IConvertible' != 'Factorial' )
              & ( 'ArrayCategoryRef' != 'ArrayCategoryNonNullRef' )
              & ( localinv != 'System_IntPtr' )
              & ( 'System_IntPtr' != 'System_IEquatable_1___System_String' )
              & ( 'System_Int32' != 'System_IntPtr' )
              & ( 'ArrayCategoryValue' != 'System_ICloneable' )
              & ( 'System_String' != 'System_IConvertible' )
              & ( 'ArrayCategoryInt' != 'System_Array' )
              & ( 'System_String' != 'System_ICloneable' )
              & ( 'System_Array' != stringLiteral0 )
              & ( allocated != 'ArrayCategoryInt' )
              & ( exposeVersion != 'NonNullFieldsAreInitialized' )
              & ( 'System_IConvertible' != 'System_IComparable_1___System_String' )
              & ( 'NonNullFieldsAreInitialized' != 'System_Byte' )
              & ( 'SharingMode_Unshared' != 'System_Type' )
              & ( 'System_String' != 'System_UInt64' )
              & ( localinv != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Int16' != 'System_UIntPtr' )
              & ( elements != 'System_IComparable' )
              & ( localinv != 'System_IEquatable_1___System_String' )
              & ( 'ArrayCategoryRef' != 'System_ICloneable' )
              & ( 'SharingMode_LockProtected' != 'System_UInt32' )
              & ( 'ArrayCategoryNonNullRef' != 'System_UInt64' )
              & ( 'PeerGroupPlaceholder' != 'System_ICloneable' )
              & ( 'System_UInt64' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( ownerFrame != 'System_Collections_IEnumerable' )
              & ( 'System_Array' != 'System_UInt64' )
              & ( 'ArrayCategoryRef' != 'System_Collections_IEnumerable' )
              & ( 'SharingMode_Unshared' != 'System_UInt64' )
              & ( ownerRef != 'ArrayCategoryValue' )
              & ( 'System_UInt64' != 'System_IConvertible' )
              & ( sharingMode != 'System_IntPtr' )
              & ( 'ArrayCategoryRef' != 'System_Boolean' )
              & ( 'System_SByte' != 'System_IEquatable_1___System_String' )
              & ( allocated != 'System_Int16' )
              & ( localinv != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryNonNullRef' != 'Factorial' )
              & ( localinv != 'SharingMode_LockProtected' )
              & ( 'NonNullFieldsAreInitialized' != 'System_Int16' )
              & ( exposeVersion != ownerRef )
              & ( 'System_Type' != 'System_Int32' )
              & ( 'PeerGroupPlaceholder' != 'ArrayCategoryInt' )
              & ( 'System_ICloneable' != 'System_IComparable_1___System_String' )
              & ( 'System_Int16' != stringLiteral0 )
              & ( 'ArrayCategoryValue' != 'System_Byte' )
              & ( 'ArrayCategoryInt' != 'System_Object' )
              & ( inv != 'System_String' )
              & ( inv != 'System_Int16' )
              & ( ownerFrame != 'PeerGroupPlaceholder' )
              & ( elements != inv )
              & ( localinv != stringLiteral0 )
              & ( elements != 'System_UInt16' )
              & ( sharingMode != 'ArrayCategoryValue' )
              & ( 'System_Boolean' != 'FirstConsistentOwner' )
              & ( 'System_Char' != 'System_ICloneable' )
              & ( 'System_Object' != 'System_Int32' )
              & ( 'System_Array' != 'System_Object' )
              & ( ownerRef != 'System_IComparable_1___System_String' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Collections_IEnumerable' )
              & ( 'PeerGroupPlaceholder' != 'ArrayCategoryRef' )
              & ( exposeVersion != 'System_UInt32' )
              & ( 'System_Int32' != 'System_IEquatable_1___System_String' )
              & ( 'System_String' != 'System_Byte' )
              & ( 'System_IntPtr' != 'System_IComparable_1___System_String' )
              & ( 'System_String' != 'System_Int16' )
              & ( 'SharingMode_Unshared' != 'System_Int32' )
              & ( 'System_UInt32' != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_Unshared' != 'System_IEquatable_1___System_String' )
              & ( ownerFrame != 'System_Array' )
              & ( 'System_Array' != 'NonNullFieldsAreInitialized' )
              & ( 'System_Array' != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryNonNullRef' != stringLiteral0 )
              & ( 'ArrayCategoryValue' != 'System_IComparable' )
              & ( 'System_Type' != 'System_UIntPtr' )
              & ( 'System_UInt32' != 'System_Int64' )
              & ( 'System_UInt16' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'SharingMode_Unshared' != 'FirstConsistentOwner' )
              & ( 'ArrayCategoryNonNullRef' != 'System_IntPtr' )
              & ( 'SharingMode_Unshared' != ownerRef )
              & ( 'System_Byte' != 'System_UInt16' )
              & ( 'System_Boolean' != 'System_UIntPtr' )
              & ( exposeVersion != 'System_IComparable' )
              & ( 'System_Int64' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'NonNullFieldsAreInitialized' != 'Factorial' )
              & ( elements != 'System_UIntPtr' )
              & ( 'System_UInt64' != 'System_UIntPtr' )
              & ( inv != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'SharingMode_Unshared' != stringLiteral0 )
              & ( inv != 'System_Boolean' )
              & ( inv != 'System_IComparable' )
              & ( 'System_Type' != 'System_UInt16' )
              & ( exposeVersion != 'System_IConvertible' )
              & ( 'System_String' != 'Factorial' )
              & ( 'System_IntPtr' != stringLiteral0 )
              & ( 'System_ICloneable' != 'System_IConvertible' )
              & ( ownerRef != 'FirstConsistentOwner' )
              & ( exposeVersion != 'System_IntPtr' )
              & ( 'System_Byte' != 'System_IConvertible' )
              & ( allocated != inv )
              & ( sharingMode != 'System_ICloneable' )
              & ( 'System_UInt64' != 'System_ICloneable' )
              & ( ownerRef != 'NonNullFieldsAreInitialized' )
              & ( 'System_Boolean' != 'System_Object' )
              & ( 'System_Object' != 'System_Type' )
              & ( inv != 'System_UIntPtr' )
              & ( 'ArrayCategoryRef' != 'System_Int32' )
              & ( sharingMode != 'NonNullFieldsAreInitialized' )
              & ( ownerRef != 'System_ICloneable' )
              & ( 'SharingMode_LockProtected' != 'System_Int64' )
              & ( 'System_Boolean' != 'System_UInt16' )
              & ( 'ArrayCategoryNonNullRef' != 'System_IComparable_1___System_String' )
              & ( elements != 'System_String' )
              & ( 'ArrayCategoryNonNullRef' != 'System_String' )
              & ( 'System_Array' != 'System_ICloneable' )
              & ( 'System_Object' != stringLiteral0 )
              & ( 'ArrayCategoryValue' != 'System_UIntPtr' )
              & ( 'ArrayCategoryRef' != 'System_IComparable' )
              & ( 'System_Int64' != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryValue' != 'System_Object' )
              & ( 'System_Byte' != 'System_UInt64' )
              & ( 'System_UInt16' != 'System_UInt32' )
              & ( 'ArrayCategoryValue' != 'System_IConvertible' )
              & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != stringLiteral0 )
              & ( 'System_SByte' != 'System_Char' )
              & ( 'System_String' != stringLiteral0 )
              & ( 'System_UInt64' != 'Factorial' )
              & ( 'System_IConvertible' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( localinv != 'System_IComparable_1___System_String' )
              & ( 'SharingMode_Unshared' != 'System_Array' )
              & ( 'System_SByte' != 'Factorial' )
              & ( elements != sharingMode )
              & ( 'SharingMode_LockProtected' != 'ArrayCategoryInt' )
              & ( ownerFrame != 'ArrayCategoryNonNullRef' )
              & ( 'System_Array' != 'System_Boolean' )
              & ( localinv != exposeVersion )
              & ( 'System_UInt16' != 'System_IComparable' )
              & ( 'SharingMode_LockProtected' != 'System_IConvertible' )
              & ( ownerRef != 'System_Byte' )
              & ( 'NonNullFieldsAreInitialized' != 'System_UIntPtr' )
              & ( 'System_IComparable' != 'System_Collections_IEnumerable' )
              & ( 'NonNullFieldsAreInitialized' != stringLiteral0 )
              & ( 'SharingMode_LockProtected' != 'System_SByte' )
              & ( 'FirstConsistentOwner' != 'System_Char' )
              & ( 'System_String' != 'System_Int32' )
              & ( 'ArrayCategoryInt' != 'System_IntPtr' )
              & ( 'PeerGroupPlaceholder' != 'System_IEquatable_1___System_String' )
              & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_IComparable' )
              & ( ownerFrame != 'System_IConvertible' )
              & ( 'NonNullFieldsAreInitialized' != 'System_Int64' )
              & ( exposeVersion != 'System_Int64' )
              & ( ownerRef != 'System_Object' )
              & ( elements != 'Factorial' )
              & ( 'FirstConsistentOwner' != 'System_UInt32' )
              & ( 'System_UIntPtr' != 'System_IComparable' )
              & ( elements != 'System_Collections_IEnumerable' )
              & ( sharingMode != 'ArrayCategoryRef' )
              & ( ownerRef != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_LockProtected' != 'System_Int32' )
              & ( 'System_Boolean' != 'NonNullFieldsAreInitialized' )
              & ( 'System_SByte' != 'System_Int16' )
              & ( 'System_Byte' != 'Factorial' )
              & ( 'PeerGroupPlaceholder' != 'System_Type' )
              & ( 'System_Array' != 'FirstConsistentOwner' )
              & ( sharingMode != 'Factorial' )
              & ( 'ArrayCategoryValue' != 'System_Array' )
              & ( inv != 'System_Char' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Boolean' )
              & ( 'System_ICloneable' != 'System_IEquatable_1___System_String' )
              & ( allocated != 'System_IComparable' )
              & ( ownerRef != 'System_Array' )
              & ( 'FirstConsistentOwner' != 'System_IEquatable_1___System_String' )
              & ( elements != 'System_ICloneable' )
              & ( 'System_UInt16' != 'System_IConvertible' )
              & ( 'System_UInt64' != 'System_Collections_IEnumerable' )
              & ( 'System_UInt32' != 'System_Collections_IEnumerable' )
              & ( exposeVersion != 'System_UInt16' )
              & ( 'PeerGroupPlaceholder' != 'System_SByte' )
              & ( 'ArrayCategoryNonNullRef' != 'System_IConvertible' )
              & ( 'System_UInt32' != 'System_IComparable' )
              & ( 'PeerGroupPlaceholder' != 'System_UInt16' )
              & ( ownerRef != 'System_Int32' )
              & ( 'NonNullFieldsAreInitialized' != 'System_UInt32' )
              & ( ownerRef != 'PeerGroupPlaceholder' )
              & ( exposeVersion != 'System_String' )
              & ( 'System_SByte' != 'System_UInt16' )
              & ( inv != sharingMode )
              & ( 'NonNullFieldsAreInitialized' != 'System_ICloneable' )
              & ( 'NonNullFieldsAreInitialized' != 'System_IEquatable_1___System_String' )
              & ( allocated != 'System_IntPtr' )
              & ( 'System_ICloneable' != stringLiteral0 )
              & ( 'NonNullFieldsAreInitialized' != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryRef' != 'System_Array' )
              & ( 'System_Int64' != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_LockProtected' != ownerFrame )
              & ( inv != 'System_Byte' )
              & ( 'System_IntPtr' != 'System_IConvertible' )
              & ( 'ArrayCategoryInt' != 'System_Int32' )
              & ( 'System_Int16' != 'System_ICloneable' )
              & ( 'SharingMode_LockProtected' != ownerRef )
              & ( elements != 'System_Type' )
              & ( inv != 'System_IEquatable_1___System_String' )
              & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_IComparable_1___System_String' )
              & ( 'System_Object' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'SharingMode_Unshared' != 'System_IComparable' )
              & ( 'System_UInt64' != 'System_IComparable' )
              & ( 'System_String' != 'System_Char' )
              & ( 'FirstConsistentOwner' != 'System_IComparable_1___System_String' )
              & ( sharingMode != 'System_UInt32' )
              & ( 'System_UInt16' != 'System_UInt64' )
              & ( 'ArrayCategoryInt' != 'System_Boolean' )
              & ( 'System_Object' != 'System_Int64' )
              & ( 'System_Object' != 'Factorial' )
              & ( 'SharingMode_Unshared' != 'PeerGroupPlaceholder' )
              & ( sharingMode != 'System_Int16' )
              & ( 'System_UInt32' != 'System_ICloneable' )
              & ( 'System_Object' != 'System_ICloneable' )
              & ( 'System_IntPtr' != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryNonNullRef' != 'System_SByte' )
              & ( elements != 'SharingMode_LockProtected' )
              & ( inv != ownerRef )
              & ( 'ArrayCategoryInt' != 'System_IEquatable_1___System_String' )
              & ( 'System_Object' != 'System_IntPtr' )
              & ( ownerFrame != 'System_UInt16' )
              & ( elements != 'System_Boolean' )
              & ( 'ArrayCategoryRef' != 'System_IConvertible' )
              & ( 'System_IntPtr' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Type' != 'System_SByte' )
              & ( ownerRef != 'System_Type' )
              & ( 'PeerGroupPlaceholder' != 'System_IntPtr' )
              & ( 'System_ICloneable' != 'System_Collections_IEnumerable' )
              & ( 'System_Int16' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Int32' != stringLiteral0 )
              & ( 'System_Type' != 'System_IConvertible' )
              & ( ownerFrame != 'System_IComparable' )
              & ( 'NonNullFieldsAreInitialized' != 'System_IComparable_1___System_String' )
              & ( 'System_Boolean' != 'System_Char' )
              & ( 'System_IConvertible' != stringLiteral0 )
              & ( 'SharingMode_LockProtected' != 'System_UIntPtr' )
              & ( 'System_UInt32' != stringLiteral0 )
              & ( ownerRef != 'ArrayCategoryInt' )
              & ( 'SharingMode_LockProtected' != 'System_Array' )
              & ( 'System_Boolean' != 'System_IComparable' )
              & ( 'ArrayCategoryInt' != 'System_Int64' )
              & ( sharingMode != 'System_UIntPtr' )
              & ( localinv != 'System_UInt64' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Array' )
              & ( 'System_Boolean' != 'System_ICloneable' )
              & ( localinv != 'System_Int32' )
              & ( 'PeerGroupPlaceholder' != stringLiteral0 )
              & ( 'Factorial' != stringLiteral0 )
              & ( ownerRef != 'System_Boolean' )
              & ( allocated != elements )
              & ( 'System_UInt16' != 'System_Int32' )
              & ( 'ArrayCategoryRef' != 'System_Int64' )
              & ( ownerFrame != 'System_Boolean' )
              & ( 'PeerGroupPlaceholder' != 'ArrayCategoryValue' )
              & ( 'System_Int16' != 'System_IConvertible' )
              & ( 'ArrayCategoryNonNullRef' != 'NonNullFieldsAreInitialized' )
              & ( localinv != 'System_Type' )
              & ( ownerRef != 'System_IComparable' )
              & ( 'ArrayCategoryInt' != 'System_Char' )
              & ( 'ArrayCategoryRef' != 'System_IntPtr' )
              & ( 'ArrayCategoryValue' != 'System_Type' )
              & ( 'ArrayCategoryRef' != 'System_String' )
              & ( 'System_Boolean' != 'System_String' )
              & ( 'System_Object' != 'System_Char' )
              & ( inv != 'System_Int32' )
              & ( 'System_SByte' != 'System_UInt32' )
              & ( 'SharingMode_Unshared' != 'System_UInt16' )
              & ( 'SharingMode_LockProtected' != 'Factorial' )
              & ( 'System_Byte' != 'System_IntPtr' )
              & ( 'System_Int32' != 'Factorial' )
              & ( 'PeerGroupPlaceholder' != 'ArrayCategoryNonNullRef' )
              & ( 'System_Boolean' != 'System_Int64' )
              & ( 'SharingMode_Unshared' != 'ArrayCategoryValue' )
              & ( sharingMode != 'System_Object' )
              & ( 'FirstConsistentOwner' != 'System_Byte' )
              & ( inv != 'System_IntPtr' ) )
          | ( 'IsStaticField'(inv) = true_1 )
          | ~ ! [X276: $int,X277: $int,X275: $int] : ( 'StructGet'('StructSet'(X276,X275,X277),X275) = X277 )
          | ~ ! [X281: $int,X278: $int,X280: $int,X279: $int] :
                ( ( true_1 != 'IsValueType'('UnboxedType'(X281)) )
               => ( 'BoxFunc'(X281,X280,X278,X279) = X281 ) )
          | ( 'IncludeInMainFrameCondition'(ownerFrame) != true_1 )
          | ~ ! [X282: $int] : ( true_1 != 'IsMemberlessType'(typeof(X282)) )
          | ~ ! [X285: $int,X283: $int,X284: $int] :
                ~ ( ~ ( ( true_1 = 'System_String_Equals_System_String_System_String'(X283,X284,X285) )
                    <=> ( true_1 = 'StringEquals'(X285,X284) ) )
                  | ~ ( ( X284 = X285 )
                     => ( true_1 = 'StringEquals'(X284,X285) ) )
                  | ~ ( ( true_1 = 'System_String_Equals_System_String_System_String'(X283,X284,X285) )
                    <=> ( true_1 = 'StringEquals'(X284,X285) ) ) )
          | ( x('Factorial','Factorial') != true_1 )
          | ~ ! [X286: $int,X287: $int,X289: $int,X288: $int] :
                ( ( true_1 = 'IsHeap'(X287) )
               => ( true_1 = 'InRange'(select2(X287,X286,'AsRangeField'(X288,X289)),X289) ) )
          | ~ $less(int_4294967295,int_9223372036854775807)
          | ~ ! [X290: $int] :
                ( ~ ( $less(X290,int_m2147483648)
                    | $less(int_2147483647,X290) )
              <=> ( true_1 = 'InRange'(X290,'System_Int32') ) )
          | ~ ! [X291: $int] :
              ? [X292: $int] :
                ( ~ ( ~ ( ( 'System_Object' != X291 )
                       => ( X291 != X292 ) )
                    | ( true_1 != x(X291,X292) ) )
                & ( 'BaseClass'(X291) = X292 ) )
          | ( 'IsImmutable'('System_String') != true_1 )
          | ~ ! [X295: $int,X294: $int,X293: $int] :
                ( ( true_1 = 'IsHeap'(X293) )
               => ( true_1 = 'InRange'('IntArrayGet'(select2(X293,X295,elements),X294),'ElementType'(typeof(X295))) ) )
          | ( x('System_IComparable_1___System_String','System_IComparable_1___System_String') != true_1 )
          | ( 'IsStaticField'(elements) = true_1 )
          | ( x('System_Collections_Generic_IEnumerable_1___System_Char','System_Collections_IEnumerable') != true_1 )
          | ~ ! [X296: $int,X297: $int] :
                ( ( true_1 = 'IsAllocated'(X297,X296) )
               => ( true_1 = select2(X297,X296,allocated) ) )
          | ~ ! [X299: $int,X300: $int,X298: $int] :
                ( ( true_1 = 'IsAllocated'(X300,X299) )
               => ( true_1 = 'IsAllocated'(X300,'ValueArrayGet'(X299,X298)) ) )
          | ( 'DeclType'('NonNullFieldsAreInitialized') != 'System_Object' )
          | ~ ! [X301: $int,X302: $int] :
                ( ( true_1 = 'IsHeap'(X302) )
               => ( 'PeerGroupPlaceholder' = select2(X302,'ClassRepr'(X301),ownerFrame) ) )
          | ( x('System_Type','System_Object') != true_1 )
          | ( x('System_Collections_IEnumerable','System_Collections_IEnumerable') != true_1 )
          | ~ ! [X303: $int,X304: $int] :
                ( ( nullObject != 'BoxTester'(X303,X304) )
              <=> ( 'UnboxedType'(X303) = X304 ) )
          | ( 'IsValueType'('System_Byte') != true_1 )
          | ~ ! [X306: $int,X305: $int] :
              ? [X307: $int] :
                ( ~ ( ~ ( ( X305 = X307 )
                        | ( X306 = X307 ) )
                    | $less(X307,X306)
                    | $less(X307,X305) )
                & ( max(X306,X305) = X307 ) )
          | ( 'IsMemberlessType'('System_IConvertible') != true_1 )
          | ( x('System_Collections_Generic_IEnumerable_1___System_Char','System_Object') != true_1 )
          | ~ ! [X308: $int,X309: $int] :
                ( ~ ( ( select2(X309,X308,localinv) = X1 )
                    | ( true_1 != 'IsHeap'(X309) )
                    | ( true_1 != x(select2(X309,X308,inv),'System_String') ) )
               => $true )
          | ~ ! [X310: $int,X311: $int,X312: $int] :
              ? [X313: $int,X314: $int] :
                ( ( select2(X310,X312,ownerRef) = X314 )
                & ( ~ ( ( true_1 != 'IsHeap'(X310) )
                      | ( 'PeerGroupPlaceholder' = X313 )
                      | ( nullObject = X312 )
                      | ( 'AsPureObject'(X312) != X312 )
                      | ( 'BaseClass'(X313) = select2(X310,X314,localinv) )
                      | ( true_1 != x(select2(X310,X314,inv),X313) )
                      | ~ ( $true
                        <=> ( true_1 = select2(X310,X312,allocated) ) ) )
                 => ( select2(X310,X312,X311) = 'FieldDependsOnFCO'(X312,X311,select2(X310,select2(X310,X312,'FirstConsistentOwner'),exposeVersion)) ) )
                & ( select2(X310,X312,ownerFrame) = X313 ) )
          | ( 'IsMemberlessType'('System_Collections_Generic_IEnumerable_1___System_Char') != true_1 )
          | ~ ! [X316: $int,X315: $int] :
                ( ~ $less(X316,1)
               => ( shr(X315,X316) = x_1(shr(X315,$sum(X316,$uminus(1))),2) ) )
          | ~ ! [X318: $int,X319: $int,X317: $int] :
              ? [X320: $int] :
                ( ( select2(X317,X319,'AsPeerField'(X318)) = X320 )
                & ( ~ ( ( nullObject = X320 )
                      | ( true_1 != 'IsHeap'(X317) ) )
                 => ~ ( ( select2(X317,X320,ownerRef) != select2(X317,X319,ownerRef) )
                      | ( select2(X317,X320,ownerFrame) != select2(X317,X319,ownerFrame) ) ) ) )
          | ( 'StringLength'(stringLiteral0) != 19 )
          | ( $sum(int_m2147483648,1) != $sum(0,$uminus(int_2147483647)) )
          | ~ ! [X321: $int,X322: $int] :
                ( ( nullObject != 'BoxTester'(X322,X321) )
               => ( 'Box'('Unbox'(X322),X322) = X322 ) )
          | ~ ! [X323: $int,X324: $int] :
              ? [X325: $int] :
                ( ( min(X324,X323) = X325 )
                & ~ ( $less(X324,X325)
                    | $less(X323,X325)
                    | ~ ( ( X323 = X325 )
                        | ( X324 = X325 ) ) ) )
          | ~ ! [X326: $int] :
                ( ( true_1 = 'InRange'(X326,'System_UInt32') )
              <=> ~ ( $less(int_4294967295,X326)
                    | $less(X326,0) ) )
          | ( 'IsImmutable'('Factorial') = true_1 )
          | ~ ! [X328: $int,X329: $int,X327: $int] :
                ( ( true_1 != X329 )
               => ( 'IfThenElse'(X329,X327,X328) = X328 ) )
          | ~ ! [X330: $int,X331: $int] :
              ? [X332: $int] :
                ( ~ ( ( true_1 != x(X332,X332) )
                    | ( true_1 != x(X332,'System_Array') ) )
                & ( 'RefArray'(X330,X331) = X332 ) )
          | ~ $less(int_m9223372036854775808,int_m2147483648)
          | ~ ( ( 'PurityAxiomsCanBeAssumed' = true_1 )
             => ! [X333: $int,X334: $int] :
                ? [X335: $int] :
                  ( ( ( true_1 = 'IsHeap'(X334) )
                   => ~ ( ~ ( ( 0 != X333 )
                           => ( $product(X333,'Factorial_recursiveFac_System_Int32'(X334,$sum(X333,$uminus(1)))) = X335 ) )
                        | ~ ( ( 0 = X333 )
                           => ( 1 = X335 ) ) ) )
                  & ( 'Factorial_recursiveFac_System_Int32'(X334,X333) = X335 ) ) )
          | ~ ! [X336: $int,X337: $int] :
                ( ( ~ $less(X336,0)
                  | ~ $less(X337,0) )
               => ~ $less(and_1(X337,X336),0) )
          | ~ ! [X341: $int,X338: $int,X339: $int,X340: $int] :
                ( ( X338 != X339 )
               => ( 'ValueArrayGet'(X341,X338) = 'ValueArrayGet'('ValueArraySet'(X341,X339,X340),X338) ) )
          | ~ ! [X342: $int] :
                ( ( true_1 = 'IsHeap'(X342) )
               => ( stringLiteral0 = 'System_String_IsInterned_System_String_notnull'(X342,stringLiteral0) ) )
          | ~ ! [X344: $int,X343: $int] :
              ? [X345: $int] :
                ( ~ ( ( true_1 != x(X345,X345) )
                    | ( true_1 != x(X345,'System_Array') ) )
                & ( 'NonNullRefArray'(X343,X344) = X345 ) )
          | ~ ! [X346: $int] :
                ( ( true_1 = 'InRange'(X346,'System_SByte') )
              <=> ~ ( $less(X346,$sum(0,$uminus(128)))
                    | ~ $less(X346,128) ) )
          | ~ ! [X347: $int] : ~ $less('StringLength'(X347),0)
          | ~ ! [X349: $int,X348: $int] : ( 'ElementType'('ValueArray'(X348,X349)) = X348 )
          | ( x('System_String','System_Collections_IEnumerable') != true_1 )
          | ~ ! [X350: $int,X351: $int,X352: $int] : ( 'ValueArrayGet'('ValueArraySet'(X352,X350,X351),X350) = X351 )
          | ~ ! [X355: $int,X353: $int,X354: $int] :
                ( ( true_1 = 'System_String_Equals_System_String_System_String'(X355,X354,X353) )
              <=> ( true_1 = 'System_String_Equals_System_String'(X355,X354,X353) ) )
          | ( 'AsInterface'('System_IEquatable_1___System_String') != 'System_IEquatable_1___System_String' )
          | ~ ! [X356: $int,X358: $int,X357: $int] :
              ? [X360: $int,X359: $int] :
                ( ( 'AsInterface'(X358) = X359 )
                & ( ~ ( ( X358 != X359 )
                      | ( X356 != X360 )
                      | ( true_1 != x('UnboxedType'(X360),X359) ) )
                 => ( true_1 = x(typeof(X356),X358) ) )
                & ( 'Box'(X357,X356) = X360 ) )
          | ~ ! [X361: $int,X363: $int,X364: $int,X362: $int] :
                ( ( X362 != X364 )
               => ( 'RefArrayGet'('RefArraySet'(X363,X362,X361),X364) = 'RefArrayGet'(X363,X364) ) )
          | ~ ! [X365: $int,X366: $int] : ( 'ElementType'('IntArray'(X366,X365)) = X366 )
          | ~ ! [X369: $int,X367: $int,X368: $int] :
              ? [X370: $int] :
                ( ( ~ ( ( true_1 != 'IsHeap'(X367) )
                      | ( nullObject = X370 ) )
                 => ( true_1 = x(typeof(X370),'ElementType'(typeof(X368))) ) )
                & ( 'RefArrayGet'(select2(X367,X368,elements),X369) = X370 ) )
          | ( x('System_IConvertible','System_Object') != true_1 )
          | ( 'Factorial' != 'AsDirectSubClass'('Factorial',X0) )
          | ~ ! [X372: $int,X371: $int] : ( 'ElementType'('NonNullRefArray'(X372,X371)) = X372 )
          | ( x('System_String','System_ICloneable') != true_1 )
          | ~ ! [X374: $int,X373: $int,X375: $int] :
                ( ( true_1 = 'IsAllocated'(X374,X375) )
               => ( true_1 = 'IsAllocated'(X374,'RefArrayGet'(X375,X373)) ) )
          | ~ ! [X378: $int,X377: $int,X376: $int] :
              ? [X379: $int] :
                ( ( 'IntArray'(X378,X377) = X379 )
                & ( ( true_1 = x(X379,X376) )
                 => ( ( true_1 = x('System_Array',X376) )
                    | ( X376 = X379 ) ) ) )
          | ( 'AsInterface'('System_ICloneable') != 'System_ICloneable' ) )
      & ( 'BaseClass'('System_String') = X1 )
      & ( 'BaseClass'('Factorial') = X0 ) ),
    inference(rectify,[],[f4]) ).

tff(f25,plain,
    ? [X0: $int,X1: $int] :
      ( ~ ( ~ ! [X2: $int,X3: $int] :
              ? [X4: $int] :
                ( ( ~ ( ~ $less(X2,32768)
                      | $less(16,X3)
                      | $less(X3,0)
                      | $less(X2,0) )
                 => ~ ( $less(X4,0)
                      | $less(int_2147483647,X4) ) )
                & ( shl(X2,X3) = X4 ) )
          | ~ ! [X6: $int,X7: $int,X5: $int] :
                ( ~ ( ( true_1 != x(typeof(X5),'IntArray'(X7,X6)) )
                    | ( nullObject = X5 ) )
               => ( 'Rank'(X5) = X6 ) )
          | ( x('System_String','System_IEquatable_1___System_String') != true_1 )
          | ( 'AsInterface'('System_IConvertible') != 'System_IConvertible' )
          | ~ ! [X9: $int,X8: $int,X10: $int] :
              ? [X11: $int,X12: $int] :
                ( ( 'RefArrayGet'(select2(X8,X10,elements),X9) = X11 )
                & ( 'ElementProxy'(X10,$sum(0,$uminus(1))) = X12 )
                & ( ~ ( ( true_1 != 'IsHeap'(X8) )
                      | ( true_1 != x(typeof(X10),'System_Array') ) )
                 => ( ( nullObject = X11 )
                    | ( true_1 = 'IsImmutable'(typeof(X11)) )
                    | ~ ( ( select2(X8,X12,ownerFrame) != select2(X8,X11,ownerFrame) )
                        | ( select2(X8,X11,ownerRef) != select2(X8,X12,ownerRef) ) ) ) ) )
          | ~ ! [X14: $int,X13: $int,X15: $int] :
                ( ( true_1 = 'InRange'(X14,X15) )
               => ( 'IntToInt'(X14,X13,X15) = X14 ) )
          | ~ ! [X16: $int,X17: $int] :
              ? [X18: $int] :
                ( ( 'IntArray'(X16,X17) = X18 )
                & ~ ( ( x(X18,'System_Array') != true_1 )
                    | ( x(X18,X18) != true_1 ) ) )
          | ( 'IsStaticField'(allocated) = true_1 )
          | ( 'IsMemberlessType'('System_IComparable') != true_1 )
          | ( 'IncludedInModifiesStar'(ownerRef) = true_1 )
          | ~ ! [X20: $int,X19: $int,X21: $int] :
                ( ~ ( ( true_1 != select2(X20,X19,allocated) )
                    | ( true_1 != 'IsHeap'(X20) ) )
               => ( true_1 = 'IsAllocated'(X20,select2(X20,X19,X21)) ) )
          | ~ ! [X22: $int] :
                ( ( true_1 = 'InRange'(X22,'System_Char') )
              <=> ~ ( ~ $less(X22,65536)
                    | $less(X22,0) ) )
          | ~ ! [X23: $int] : ( nullObject != 'ClassRepr'(X23) )
          | ~ ! [X24: $int,X25: $int] :
                ( ( true_1 = x(X25,'AsMutable'(X24)) )
               => ~ ( ( 'IsImmutable'(X25) = true_1 )
                    | ( 'AsMutable'(X25) != X25 ) ) )
          | ( 'IsValueType'('System_Int16') != true_1 )
          | ( 'IncludedInModifiesStar'(ownerFrame) = true_1 )
          | ~ ! [X26: $int,X27: $int] : ( x_2(X26,X27) = $sum(X26,$uminus($product(x_1(X26,X27),X27))) )
          | ( 'IsImmutable'('System_Object') = true_1 )
          | ~ ! [X29: $int,X30: $int,X28: $int] :
              ? [X31: $int] :
                ( ( 'ValueArray'(X29,X30) = X31 )
                & ( ( true_1 = x(X31,X28) )
                 => ( ( true_1 = x('System_Array',X28) )
                    | ( X28 = X31 ) ) ) )
          | ~ ! [X32: $int,X33: $int] :
                ( ( true_1 = 'IsNotNull'(X32,X33) )
              <=> ~ ( ( true_1 != 'Is'(X32,X33) )
                    | ( nullObject = X32 ) ) )
          | ~ ! [X34: $int,X35: $int,X36: $int] :
                ( ~ ( ( nullObject = X35 )
                    | ( true_1 != x(typeof(X35),'NonNullRefArray'(X36,X34)) ) )
               => ( 'Rank'(X35) = X34 ) )
          | ~ ! [X38: $int,X37: $int] :
              ? [X40: $int,X39: $int,X41: $int] :
                ( ( ~ ( ( true_1 != x(select2(X37,X40,inv),X39) )
                      | ( true_1 != 'IsHeap'(X37) )
                      | ( select2(X37,X40,localinv) = 'BaseClass'(X39) )
                      | ( 'PeerGroupPlaceholder' = X39 ) )
                 => ~ ( ( select2(X37,X38,inv) != X41 )
                      | ( select2(X37,X38,localinv) != X41 ) ) )
                & ( select2(X37,X38,ownerRef) = X40 )
                & ( select2(X37,X38,ownerFrame) = X39 )
                & ( typeof(X38) = X41 ) )
          | ~ ! [X42: $int] : ( shr(X42,0) = X42 )
          | ~ ! [X44: $int,X43: $int] :
              ? [X45: $int] :
                ( ( typeof(X43) = X45 )
                & ( ~ ( ( true_1 != x(X45,'System_Array') )
                      | ( nullObject = X43 )
                      | ( true_1 != 'IsHeap'(X44) ) )
                 => ~ ( ( select2(X44,X43,localinv) != X45 )
                      | ( select2(X44,X43,inv) != X45 ) ) ) )
          | ( 'AsInterface'('System_IComparable_1___System_String') != 'System_IComparable_1___System_String' )
          | ~ ! [X46: $int] :
                ( ~ ( $less(X46,0)
                    | $less(int_18446744073709551615,X46) )
              <=> ( true_1 = 'InRange'(X46,'System_UInt64') ) )
          | ~ $less(int_9223372036854775807,int_18446744073709551615)
          | ~ ! [X47: $int,X50: $int,X48: $int,X49: $int] : ( 'ArrayIndexInvY'('ArrayIndex'(X50,X49,X47,X48)) = X48 )
          | ~ ! [X52: $int,X51: $int] : ( 'Unbox'('Box'(X52,X51)) = X52 )
          | ( 'AsMutable'('Factorial') != 'Factorial' )
          | ( 'IsMemberlessType'('System_ICloneable') != true_1 )
          | ~ ! [X53: $int,X54: $int] :
                ( ( ( true_1 = x(typeof(X54),X53) )
                  | ( nullObject = X54 ) )
              <=> ( true_1 = 'Is'(X54,X53) ) )
          | ( x('System_IComparable','System_IComparable') != true_1 )
          | ~ ! [X55: $int] :
                ( ( true_1 = 'IsHeap'(X55) )
               => ( true_1 = select2(X55,stringLiteral0,allocated) ) )
          | ( 'IncludeInMainFrameCondition'(allocated) != true_1 )
          | ~ $less(int_m2147483648,$sum(0,$uminus(100000)))
          | ( x('System_Collections_IEnumerable','System_Object') != true_1 )
          | ~ ! [X56: $int,X60: $int,X57: $int,X59: $int,X58: $int] :
                ( ~ ( ( true_1 != x(typeof(X60),'NonNullRefArray'(X56,X57)) )
                    | ( true_1 != 'IsHeap'(X59) ) )
               => ( nullObject != 'RefArrayGet'(select2(X59,X60,elements),X58) ) )
          | ~ $less(int_2147483647,int_4294967295)
          | ~ ! [X61: $int,X62: $int,X63: $int] :
                ( ( true_1 = X63 )
               => ( 'IfThenElse'(X63,X62,X61) = X62 ) )
          | ~ ! [X65: $int,X64: $int,X66: $int] :
                ( ( true_1 = x(X65,X64) )
               => ( true_1 = x('NonNullRefArray'(X65,X66),'NonNullRefArray'(X64,X66)) ) )
          | ~ ! [X67: $int,X68: $int] :
                ( ( true_1 != 'Is'(X68,X67) )
               => ( nullObject = 'As'(X68,X67) ) )
          | ( x('System_String','System_String') != true_1 )
          | ( x('System_String','System_Collections_Generic_IEnumerable_1___System_Char') != true_1 )
          | ~ ! [X71: $int,X70: $int,X69: $int] :
              ? [X72: $int] :
                ( ( ( true_1 = 'NonNullRefArrayRaw'(X69,X71,X70) )
                 => ~ ( ( true_1 != x(X71,'ElementType'(X72)) )
                      | ( 'Rank'(X69) != X70 )
                      | ( true_1 != x(X72,'System_Array') ) ) )
                & ( typeof(X69) = X72 ) )
          | ~ ! [X74: $int,X73: $int,X75: $int] :
              ? [X76: $int] :
                ( ( 'ElementType'(X73) = X76 )
                & ( ( true_1 = x(X73,'RefArray'(X74,X75)) )
                 => ~ ( ( true_1 != x(X76,X74) )
                      | ( X73 = X74 )
                      | ( 'RefArray'(X76,X75) != X73 ) ) ) )
          | ~ ! [X78: $int,X77: $int] : ( 'UBound'(X78,X77) = $sum('DimLength'(X78,X77),$uminus(1)) )
          | ~ ! [X80: $int,X79: $int] :
              ? [X81: $int] :
                ( ( or_1(X80,X79) = X81 )
                & ( ~ ( $less(X80,0)
                      | $less(X79,0) )
                 => ~ ( $less($sum(X80,X79),X81)
                      | $less(X81,0) ) ) )
          | ( x('System_ICloneable','System_Object') != true_1 )
          | ~ ! [X84: $int,X83: $int,X82: $int] :
                ( ( true_1 = x(X82,'NonNullRefArray'(X83,X84)) )
               => ( 'ArrayCategoryNonNullRef' = 'ArrayCategory'(X82) ) )
          | ~ ! [X85: $int] :
                ( ( true_1 = 'IsValueType'('UnboxedType'(X85)) )
               => ! [X86: $int,X87: $int] :
                  ? [X88: $int] :
                    ( ( 'Box'(X86,X85) = X88 )
                    & ? [X89: $int] :
                        ( ( ( true_1 = 'IsHeap'(X87) )
                         => ~ ( ( select2(X87,X88,localinv) != X89 )
                              | ( select2(X87,X88,inv) != X89 ) ) )
                        & ( typeof(X88) = X89 ) ) ) )
          | ~ ! [X90: $int,X91: $int] : ( 'Factorial_recursiveFac_System_Int32'(X90,X91) = 'Factorial_recursiveFac_System_Int32_1'(X91) )
          | ~ ! [X94: $int,X92: $int,X93: $int] :
                ( ~ ( $less(X93,2)
                    | ( x_2(X94,X93) != x_2(X92,X93) )
                    | ~ $less(X92,X94) )
               => ~ $less(X94,$sum(X92,X93)) )
          | ~ ! [X95: $int] :
                ( ( true_1 = 'IsValueType'(X95) )
               => ~ ( ~ ! [X97: $int] :
                          ( ( true_1 = x(X97,X95) )
                         => ( X95 = X97 ) )
                    | ~ ! [X96: $int] :
                          ( ( true_1 = x(X95,X96) )
                         => ( X95 = X96 ) ) ) )
          | ( 'IsValueType'('System_UIntPtr') != true_1 )
          | ( 'AsInterface'('System_Collections_IEnumerable') != 'System_Collections_IEnumerable' )
          | ~ ! [X99: $int,X98: $int] :
              ? [X100: $int] :
                ( ( ~ ( ( true_1 != x('UnboxedType'(X100),'System_Object') )
                      | ( X99 != X100 ) )
                 => ( X98 = X99 ) )
                & ( 'Box'(X98,X99) = X100 ) )
          | ~ ! [X103: $int,X101: $int,X102: $int] :
                ( ~ ( ( true_1 != 'StringEquals'(X103,X102) )
                    | ( true_1 != 'StringEquals'(X101,X103) ) )
               => ( true_1 = 'StringEquals'(X101,X102) ) )
          | ~ ! [X105: $int,X106: $int,X104: $int] :
              ? [X107: $int] :
                ( ( ( true_1 = x(X106,X107) )
                 => ( X106 = X107 ) )
                & ( 'ValueArray'(X104,X105) = X107 ) )
          | ( 'IsValueType'('System_UInt16') != true_1 )
          | ( x('System_ICloneable','System_ICloneable') != true_1 )
          | ~ ! [X108: $int,X111: $int,X109: $int,X110: $int] :
                ( ~ ( ( true_1 != 'IsHeap'(X111) )
                    | ( nullObject = X109 )
                    | ~ ( ( true_1 = select2(X111,'BeingConstructed','NonNullFieldsAreInitialized') )
                        | ( 'BeingConstructed' != X109 ) ) )
               => ( nullObject != select2(X111,X109,'AsNonNullRefField'(X108,X110)) ) )
          | ~ ! [X113: $int,X112: $int] :
              ? [X114: $int] :
                ( ( ~ ( $less(0,X112)
                      | ~ $less(X113,0) )
                 => ~ ( $less(0,X114)
                      | ~ $less(X113,X114) ) )
                & ( x_2(X112,X113) = X114 ) )
          | ( 'IsValueType'('System_IntPtr') != true_1 )
          | ~ ! [X117: $int,X115: $int,X116: $int] :
                ( ( true_1 = x(X116,'IntArray'(X115,X117)) )
               => ( 'ArrayCategoryInt' = 'ArrayCategory'(X116) ) )
          | ( x('System_IConvertible','System_IConvertible') != true_1 )
          | ( 'AsInterface'('System_Collections_Generic_IEnumerable_1___System_Char') != 'System_Collections_Generic_IEnumerable_1___System_Char' )
          | ( 'IncludeInMainFrameCondition'(ownerRef) != true_1 )
          | ~ ! [X118: $int] :
                ( ( true_1 = 'InRange'(X118,'System_Int16') )
              <=> ~ ( ~ $less(X118,32768)
                    | $less(X118,$sum(0,$uminus(32768))) ) )
          | ~ ! [X119: $int,X120: $int,X121: $int] :
                ( ~ ( ( true_1 != select2(X120,X119,allocated) )
                    | ( true_1 != 'IsHeap'(X120) ) )
               => ( true_1 = select2(X120,select2(X120,X119,X121),allocated) ) )
          | ( 'System_String' != 'AsDirectSubClass'('System_String',X1) )
          | ( 'DeclType'(elements) != 'System_Object' )
          | ( 'IncludeInMainFrameCondition'(localinv) = true_1 )
          | ( 'IsNotNull'(stringLiteral0,'System_String') != true_1 )
          | ~ ! [X123: $int,X124: $int,X125: $int,X122: $int] :
              ? [X126: $int] :
                ( ~ ( ( 'UnboxedType'(X126) != X122 )
                    | ( 'Box'(X124,X126) != X126 ) )
                & ( 'BoxFunc'(X124,X122,X125,X123) = X126 ) )
          | ~ ! [X127: $int,X128: $int] :
              ? [X129: $int] :
                ( ( x_2(X127,X128) = X129 )
                & ( ~ ( ~ $less(0,X128)
                      | $less(X127,0) )
                 => ~ ( $less(X129,0)
                      | ~ $less(X129,X128) ) ) )
          | ~ ! [X130: $int] :
                ( ( true_1 = x(X130,'System_String') )
               => ( 'System_String' = X130 ) )
          | ( 'System_Object' != X1 )
          | ~ ! [X132: $int,X131: $int] :
              ? [X133: $int] :
                ( ( $sum(X132,$uminus(X131)) = X133 )
                & ( ~ ( $less(X131,0)
                      | $less(X133,0) )
                 => ( x_2(X133,X131) = x_2(X132,X131) ) ) )
          | ~ ! [X136: $int,X135: $int,X134: $int] :
                ( ( true_1 = x(X135,'AsDirectSubClass'(X136,X134)) )
               => ( 'OneClassDown'(X135,X134) = X136 ) )
          | ~ ! [X138: $int,X139: $int,X137: $int] :
                ( ( true_1 = x(X137,X138) )
               => ( true_1 = x('RefArray'(X137,X139),'RefArray'(X138,X139)) ) )
          | ~ ! [X140: $int,X141: $int,X142: $int] :
                ( ~ ( ( true_1 != x(typeof(X140),'RefArray'(X141,X142)) )
                    | ( nullObject = X140 ) )
               => ( 'Rank'(X140) = X142 ) )
          | ~ ! [X143: $int,X144: $int] : ( 'System_Object' = typeof('ElementProxy'(X144,X143)) )
          | ( x('System_String','System_IComparable_1___System_String') != true_1 )
          | ~ ! [X145: $int] :
                ( ~ ( $less(int_9223372036854775807,X145)
                    | $less(X145,int_m9223372036854775808) )
              <=> ( true_1 = 'InRange'(X145,'System_Int64') ) )
          | ~ $less(100000,int_2147483647)
          | ~ ! [X148: $int,X146: $int,X147: $int,X149: $int] : ( 'ArrayIndexInvX'('ArrayIndex'(X146,X149,X148,X147)) = X148 )
          | ~ ! [X150: $int,X151: $int] :
                ( ( true_1 = 'Is'(X150,X151) )
               => ( 'As'(X150,X151) = X150 ) )
          | ~ ! [X152: $int,X153: $int] :
              ? [X154: $int] :
                ( ( ~ ( $less(X153,0)
                      | ~ $less(X152,0) )
                 => ~ ( ~ $less(X154,$sum(0,$uminus(X152)))
                      | $less(X154,0) ) )
                & ( x_2(X153,X152) = X154 ) )
          | ~ ! [X156: $int,X157: $int,X155: $int] :
                ( ~ ( ( nullObject = X155 )
                    | ( true_1 != x(typeof(X155),'ValueArray'(X156,X157)) ) )
               => ( 'Rank'(X155) = X157 ) )
          | ( 'IsValueType'('System_Boolean') != true_1 )
          | ( 'IsStaticField'(exposeVersion) = true_1 )
          | ~ ! [X159: $int,X158: $int] :
                ( ~ $less(X158,1)
               => ( shl(X159,X158) = $product(shl(X159,$sum(X158,$uminus(1))),2) ) )
          | ( x('System_IEquatable_1___System_String','System_Object') != true_1 )
          | ~ ! [X161: $int,X160: $int] :
                ( ( true_1 = 'IsHeap'(X161) )
               => ( true_1 = select2(X161,'ClassRepr'(X160),allocated) ) )
          | ~ ! [X162: $int] : ( true_1 = 'IsNotNull'('TypeObject'(X162),'System_Type') )
          | ~ ! [X163: $int] : ( true_1 != x(typeof('ClassRepr'(X163)),'System_Object') )
          | ~ ! [X164: $int,X166: $int,X165: $int] :
                ( ( true_1 = x(X166,'ValueArray'(X164,X165)) )
               => ( 'ArrayCategoryValue' = 'ArrayCategory'(X166) ) )
          | ~ ! [X168: $int,X169: $int,X167: $int] :
              ? [X170: $int] :
                ( ( ( true_1 = x(X167,'NonNullRefArray'(X168,X169)) )
                 => ~ ( ( 'NonNullRefArray'(X170,X169) != X167 )
                      | ( X167 = X168 )
                      | ( true_1 != x(X170,X168) ) ) )
                & ( 'ElementType'(X167) = X170 ) )
          | ( x('System_IEquatable_1___System_String','System_IEquatable_1___System_String') != true_1 )
          | ~ ! [X171: $int,X172: $int] : ~ $less('DimLength'(X171,X172),0)
          | ~ ! [X173: $int,X174: $int] :
              ? [X175: $int] :
                ( ( x_2(X173,X174) = X175 )
                & ( ~ ( ~ $less(0,X174)
                      | $less(0,X173) )
                 => ~ ( ~ $less($sum(0,$uminus(X174)),X175)
                      | $less(0,X175) ) ) )
          | ( x('System_Collections_Generic_IEnumerable_1___System_Char','System_Collections_Generic_IEnumerable_1___System_Char') != true_1 )
          | ( 'IncludedInModifiesStar'(elements) != true_1 )
          | ~ ! [X176: $int] :
                ( ( true_1 = 'InRange'(X176,'System_Byte') )
              <=> ~ ( $less(X176,0)
                    | ~ $less(X176,256) ) )
          | ~ ! [X177: $int,X178: $int] :
                ( ~ ( $less(X178,0)
                    | $less(X177,0) )
               => ( x_2(X177,X178) = x_2($sum(X178,X177),X178) ) )
          | ( 'IncludeInMainFrameCondition'('FirstConsistentOwner') = true_1 )
          | ( 'IsValueType'('System_Char') != true_1 )
          | ( 'IsMemberlessType'('System_IEquatable_1___System_String') != true_1 )
          | ~ ! [X180: $int,X179: $int,X182: $int,X181: $int] :
                ( ( X180 != X181 )
               => ( 'IntArrayGet'('IntArraySet'(X182,X181,X179),X180) = 'IntArrayGet'(X182,X180) ) )
          | ( x('System_String','System_IConvertible') != true_1 )
          | ( 'IsValueType'('System_Int64') != true_1 )
          | ( 'IsStaticField'(localinv) = true_1 )
          | ~ ! [X184: $int,X185: $int,X183: $int] :
                ( ( true_1 = 'IsAllocated'(X183,X184) )
               => ( true_1 = 'IsAllocated'(X183,'StructGet'(X184,X185)) ) )
          | ~ ! [X187: $int,X186: $int] :
                ( ~ ( ( true_1 != x(typeof(X186),'System_Array') )
                    | ( true_1 != 'IsHeap'(X187) )
                    | ( true_1 != 'IsAllocated'(X187,X186) ) )
               => ( true_1 = 'IsAllocated'(X187,'ElementProxy'(X186,$sum(0,$uminus(1)))) ) )
          | ~ ! [X188: $int,X189: $int] : ( 'ElementType'('RefArray'(X188,X189)) = X188 )
          | ~ ! [X190: $int,X191: $int] : ( 'System_Object' = typeof('ElementProxyStruct'(X191,X190)) )
          | ( x('System_String','System_IComparable') != true_1 )
          | ~ ! [X192: $int] :
              ? [X193: $int] :
                ( ~ ( $less(int_2147483647,X193)
                    | $less(X193,0) )
                & ( 'Length'(X192) = X193 ) )
          | ( 'IsValueType'('System_UInt32') != true_1 )
          | ( 'IsMemberlessType'('System_IComparable_1___System_String') != true_1 )
          | ~ ! [X195: $int,X194: $int] :
              ? [X196: $int] :
                ( ~ ( ( true_1 != x(X196,X196) )
                    | ( true_1 != x(X196,'System_Array') ) )
                & ( 'ValueArray'(X195,X194) = X196 ) )
          | ~ ! [X199: $int,X197: $int,X200: $int,X198: $int] :
              ? [X201: $int] :
                ( ? [X202: $int] :
                    ( ( 'ElementProxy'(X201,X200) = X202 )
                    & ( ~ ( ( true_1 != 'IsHeap'(X197) )
                          | ( nullObject = X201 ) )
                     => ~ ( ( select2(X197,X202,ownerRef) != select2(X197,X199,ownerRef) )
                          | ( select2(X197,X202,ownerFrame) != select2(X197,X199,ownerFrame) ) ) ) )
                & ( select2(X197,X199,'AsElementsPeerField'(X198,X200)) = X201 ) )
          | ( 'AsInterface'('System_IComparable') != 'System_IComparable' )
          | ( $sum(int_m9223372036854775808,1) != $sum(0,$uminus(int_9223372036854775807)) )
          | ~ ! [X203: $int] : ( shl(X203,0) = X203 )
          | ( 'System_Object' != X0 )
          | ~ ! [X204: $int,X205: $int] :
                ( ~ ( $less(X204,0)
                    | $less(X205,0) )
               => ( x_2(X204,X205) = x_2($sum(X204,X205),X205) ) )
          | ~ ! [X206: $int] : ( 'TypeName'('TypeObject'(X206)) = X206 )
          | ( 'IncludedInModifiesStar'(exposeVersion) != true_1 )
          | ~ ! [X211: $int,X210: $int,X209: $int,X207: $int,X208: $int] :
              ? [X212: $int] :
                ( ? [X213: $int] :
                    ( ( ~ ( ( true_1 != 'IsHeap'(X208) )
                          | ( nullObject = X212 ) )
                     => ~ ( ( select2(X208,X213,ownerRef) != X211 )
                          | ( select2(X208,X213,ownerFrame) != X209 ) ) )
                    & ( 'ElementProxy'(X212,X207) = X213 ) )
                & ( select2(X208,X211,'AsElementsRepField'(X210,X209,X207)) = X212 ) )
          | ( 'AsImmutable'('System_String') != 'System_String' )
          | ( 'IsMemberlessType'('System_Collections_IEnumerable') != true_1 )
          | ~ ! [X215: $int,X214: $int] : ( 0 = 'LBound'(X214,X215) )
          | ~ ! [X216: $int] : ~ $less('Rank'(X216),1)
          | ( 'IncludeInMainFrameCondition'(exposeVersion) != true_1 )
          | ~ ! [X218: $int,X217: $int,X219: $int] :
              ? [X220: $int] :
                ( ( 'ElementType'(X219) = X220 )
                & ( ( true_1 = x('NonNullRefArray'(X218,X217),X219) )
                 => ( ( true_1 = x('System_Array',X219) )
                    | ~ ( ( true_1 != x(X218,X220) )
                        | ( 'NonNullRefArray'(X220,X217) != X219 ) ) ) ) )
          | ~ ! [X221: $int] :
                ( ( 1 = 'Rank'(X221) )
               => ( 'DimLength'(X221,0) = 'Length'(X221) ) )
          | ( 'IsValueType'('System_UInt64') != true_1 )
          | ~ ! [X223: $int,X224: $int,X222: $int] :
              ? [X225: $int] :
                ( ( 'IntArray'(X223,X222) = X225 )
                & ( ( true_1 = x(X224,X225) )
                 => ( X224 = X225 ) ) )
          | ( 'IncludeInMainFrameCondition'(inv) = true_1 )
          | ~ ! [X226: $int,X227: $int] :
              ? [X228: $int] :
                ( ( select2(X226,X227,'FirstConsistentOwner') = X228 )
                & ? [X229: $int,X230: $int,X231: $int,X232: $int] :
                    ( ( select2(X226,X227,ownerFrame) = X232 )
                    & ( select2(X226,X228,ownerRef) = X230 )
                    & ( select2(X226,X227,ownerRef) = X231 )
                    & ( select2(X226,X228,ownerFrame) = X229 )
                    & ( ~ ( ( select2(X226,X231,localinv) = 'BaseClass'(X232) )
                          | ( true_1 != 'IsHeap'(X226) )
                          | ( true_1 != x(select2(X226,X231,inv),X232) )
                          | ( ( ~ true_1 ) = select2(X226,X227,allocated) )
                          | ( nullObject = X227 )
                          | ( 'PeerGroupPlaceholder' = X232 ) )
                     => ~ ( ~ ( ( true_1 != x(select2(X226,X230,inv),X229) )
                              | ( 'PeerGroupPlaceholder' = X229 )
                              | ( 'BaseClass'(X229) = select2(X226,X230,localinv) ) )
                          | ( ( ~ true_1 ) = select2(X226,X228,allocated) )
                          | ( nullObject = X228 ) ) ) ) )
          | ( 'IsValueType'('System_Int32') != true_1 )
          | ~ ! [X234: $int,X236: $int,X235: $int,X233: $int] :
              ? [X237: $int] :
                ( ( ~ ( ( nullObject = X237 )
                      | ( true_1 != 'IsHeap'(X236) ) )
                 => ~ ( ( select2(X236,X237,ownerFrame) != X235 )
                      | ( select2(X236,X237,ownerRef) != X233 ) ) )
                & ( select2(X236,X233,'AsRepField'(X234,X235)) = X237 ) )
          | ~ ! [X238: $int,X239: $int] :
                ( ( true_1 = x(X238,'AsImmutable'(X239)) )
               => ~ ( ( 'AsImmutable'(X238) != X238 )
                    | ( true_1 != 'IsImmutable'(X238) ) ) )
          | ~ ! [X243: $int,X241: $int,X242: $int,X240: $int] :
                ( ( true_1 = 'IsHeap'(X240) )
               => ( true_1 = 'Is'(select2(X240,X241,'AsRefField'(X243,X242)),X242) ) )
          | ( x('System_Array','System_Object') != true_1 )
          | ~ ! [X244: $int,X246: $int,X245: $int] :
                ( ~ ( ( true_1 != 'System_String_Equals_System_String_System_String'(X245,X246,X244) )
                    | ( nullObject = X244 )
                    | ( nullObject = X246 ) )
               => ( 'System_String_IsInterned_System_String_notnull'(X245,X244) = 'System_String_IsInterned_System_String_notnull'(X245,X246) ) )
          | ~ ! [X247: $int,X248: $int] :
                ( ( 'AsNonNullRefField'(X248,X247) = X248 )
               => ( 'AsRefField'(X248,X247) = X248 ) )
          | ( 'DeclType'(exposeVersion) != 'System_Object' )
          | ~ ! [X251: $int,X250: $int,X249: $int] : ( 'IntArrayGet'('IntArraySet'(X250,X251,X249),X251) = X249 )
          | ( 'IsValueType'('System_SByte') != true_1 )
          | ~ ! [X252: $int,X253: $int,X254: $int] : ( 'RefArrayGet'('RefArraySet'(X252,X253,X254),X253) = X254 )
          | ( x('System_IComparable_1___System_String','System_Object') != true_1 )
          | ~ ! [X256: $int,X255: $int,X257: $int] :
                ( ( true_1 = x(X256,'RefArray'(X255,X257)) )
               => ( 'ArrayCategoryRef' = 'ArrayCategory'(X256) ) )
          | ~ ! [X261: $int,X258: $int,X260: $int,X259: $int] :
                ( ( X258 != X260 )
               => ( 'StructGet'('StructSet'(X259,X258,X261),X260) = 'StructGet'(X259,X260) ) )
          | ~ ! [X262: $int,X264: $int,X263: $int] :
              ? [X265: $int] :
                ( ( 'ElementType'(X262) = X265 )
                & ( ( true_1 = x('RefArray'(X263,X264),X262) )
                 => ( ~ ( ( true_1 != x(X263,X265) )
                        | ( 'RefArray'(X265,X264) != X262 ) )
                    | ( true_1 = x('System_Array',X262) ) ) ) )
          | ~ ! [X266: $int] :
                ( ( true_1 = 'InRange'(X266,'System_UInt16') )
              <=> ~ ( ~ $less(X266,65536)
                    | $less(X266,0) ) )
          | ~ ! [X267: $int] : ( 'ClassReprInv'('ClassRepr'(X267)) = X267 )
          | ( 'IncludeInMainFrameCondition'(elements) != true_1 )
          | ( x('System_IComparable','System_Object') != true_1 )
          | ~ ! [X271: $int,X270: $int] :
                ( ~ ( ( true_1 != x(typeof(X270),'AsImmutable'(X271)) )
                    | ( 'BeingConstructed' = X270 )
                    | ( nullObject = X270 ) )
               => ! [X272: $int] :
                  ? [X273: $int] :
                    ( ( ( true_1 = 'IsHeap'(X272) )
                     => ~ ( ~ ! [X274: $int] :
                                ( ( 'AsOwner'(X270,select2(X272,X274,ownerRef)) = X270 )
                               => ( ( 'PeerGroupPlaceholder' != select2(X272,X274,ownerFrame) )
                                  | ( X270 = X274 ) ) )
                          | ( select2(X272,X270,localinv) != X273 )
                          | ( select2(X272,X270,inv) != X273 )
                          | ( 'PeerGroupPlaceholder' != select2(X272,X270,ownerFrame) )
                          | ( 'AsOwner'(X270,select2(X272,X270,ownerRef)) != X270 ) ) )
                    & ( typeof(X270) = X273 ) ) )
          | ~ ( ( 'ArrayCategoryValue' != 'System_Int32' )
              & ( allocated != 'FirstConsistentOwner' )
              & ( 'ArrayCategoryValue' != 'System_IComparable_1___System_String' )
              & ( 'System_Int16' != 'System_UInt32' )
              & ( 'System_SByte' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( elements != 'System_Char' )
              & ( elements != 'System_IntPtr' )
              & ( 'System_Array' != 'System_Char' )
              & ( localinv != 'FirstConsistentOwner' )
              & ( 'ArrayCategoryValue' != 'System_UInt32' )
              & ( sharingMode != 'System_Collections_IEnumerable' )
              & ( 'System_Array' != 'System_Int64' )
              & ( exposeVersion != 'System_Byte' )
              & ( 'System_IConvertible' != 'System_IEquatable_1___System_String' )
              & ( 'NonNullFieldsAreInitialized' != 'System_IntPtr' )
              & ( exposeVersion != 'System_Int16' )
              & ( inv != 'System_SByte' )
              & ( ownerRef != 'Factorial' )
              & ( ownerRef != 'System_UInt16' )
              & ( allocated != stringLiteral0 )
              & ( 'System_UInt32' != 'System_IConvertible' )
              & ( 'SharingMode_LockProtected' != 'FirstConsistentOwner' )
              & ( localinv != 'ArrayCategoryRef' )
              & ( 'System_SByte' != 'System_IComparable' )
              & ( 'SharingMode_Unshared' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'ArrayCategoryValue' != 'System_Int64' )
              & ( ownerRef != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryValue' != 'System_Int16' )
              & ( 'System_Boolean' != 'System_Int32' )
              & ( 'FirstConsistentOwner' != 'System_ICloneable' )
              & ( localinv != 'ArrayCategoryInt' )
              & ( exposeVersion != 'System_Boolean' )
              & ( 'System_Object' != 'System_Byte' )
              & ( 'System_Type' != 'System_IComparable_1___System_String' )
              & ( 'System_IntPtr' != 'System_IComparable' )
              & ( 'SharingMode_Unshared' != 'System_Int16' )
              & ( 'SharingMode_Unshared' != 'System_Object' )
              & ( 'SharingMode_LockProtected' != 'System_String' )
              & ( elements != 'System_Object' )
              & ( 'System_IComparable_1___System_String' != 'Factorial' )
              & ( inv != 'Factorial' )
              & ( 'System_UInt16' != 'System_Int64' )
              & ( ownerFrame != 'System_IntPtr' )
              & ( inv != 'System_Int64' )
              & ( 'ArrayCategoryInt' != 'System_UInt16' )
              & ( sharingMode != 'System_Int64' )
              & ( 'NonNullFieldsAreInitialized' != 'System_Int32' )
              & ( allocated != 'System_Int64' )
              & ( 'System_IntPtr' != 'System_ICloneable' )
              & ( inv != 'NonNullFieldsAreInitialized' )
              & ( allocated != 'System_Array' )
              & ( 'System_Char' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( sharingMode != 'System_IComparable' )
              & ( 'System_Type' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( sharingMode != 'SharingMode_LockProtected' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Char' )
              & ( 'System_Type' != 'System_Int64' )
              & ( 'System_Boolean' != 'System_Type' )
              & ( 'ArrayCategoryInt' != stringLiteral0 )
              & ( 'ArrayCategoryNonNullRef' != 'System_UInt16' )
              & ( 'System_UInt16' != 'System_IEquatable_1___System_String' )
              & ( 'FirstConsistentOwner' != stringLiteral0 )
              & ( 'SharingMode_Unshared' != 'System_SByte' )
              & ( elements != 'System_UInt32' )
              & ( ownerFrame != stringLiteral0 )
              & ( 'PeerGroupPlaceholder' != 'System_Array' )
              & ( localinv != 'PeerGroupPlaceholder' )
              & ( 'System_Object' != 'System_IComparable' )
              & ( 'ArrayCategoryRef' != 'System_Byte' )
              & ( 'SharingMode_Unshared' != 'System_String' )
              & ( exposeVersion != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Boolean' != 'System_IEquatable_1___System_String' )
              & ( 'System_Int16' != 'System_IComparable' )
              & ( 'System_Int16' != 'System_IntPtr' )
              & ( elements != 'System_Int32' )
              & ( 'System_String' != 'System_UInt16' )
              & ( allocated != 'System_Object' )
              & ( 'System_Boolean' != stringLiteral0 )
              & ( 'ArrayCategoryNonNullRef' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_SByte' != 'System_Collections_IEnumerable' )
              & ( 'SharingMode_LockProtected' != 'System_Object' )
              & ( localinv != 'System_UInt32' )
              & ( 'ArrayCategoryRef' != 'System_UIntPtr' )
              & ( 'SharingMode_Unshared' != 'System_Byte' )
              & ( 'NonNullFieldsAreInitialized' != 'System_IComparable' )
              & ( 'NonNullFieldsAreInitialized' != 'System_UInt64' )
              & ( 'System_Int32' != 'System_IComparable' )
              & ( 'System_Boolean' != 'System_Byte' )
              & ( sharingMode != 'System_IConvertible' )
              & ( 'SharingMode_Unshared' != ownerFrame )
              & ( exposeVersion != 'System_ICloneable' )
              & ( 'ArrayCategoryRef' != 'System_Char' )
              & ( 'System_IComparable' != 'Factorial' )
              & ( allocated != ownerFrame )
              & ( ownerFrame != 'System_Type' )
              & ( 'System_Type' != 'System_Char' )
              & ( 'System_Boolean' != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryInt' != 'System_SByte' )
              & ( 'NonNullFieldsAreInitialized' != 'System_IConvertible' )
              & ( 'ArrayCategoryInt' != 'System_Byte' )
              & ( 'ArrayCategoryValue' != 'System_UInt16' )
              & ( elements != 'ArrayCategoryInt' )
              & ( 'NonNullFieldsAreInitialized' != 'System_Char' )
              & ( 'System_Byte' != 'System_ICloneable' )
              & ( localinv != 'ArrayCategoryNonNullRef' )
              & ( 'ArrayCategoryRef' != 'NonNullFieldsAreInitialized' )
              & ( 'System_UInt16' != stringLiteral0 )
              & ( ownerRef != 'System_Char' )
              & ( 'System_SByte' != 'System_Int64' )
              & ( allocated != 'System_SByte' )
              & ( 'System_Byte' != 'System_IComparable' )
              & ( elements != 'NonNullFieldsAreInitialized' )
              & ( ownerRef != 'System_SByte' )
              & ( 'SharingMode_LockProtected' != 'System_ICloneable' )
              & ( sharingMode != 'System_UInt64' )
              & ( 'System_Boolean' != 'System_IConvertible' )
              & ( 'System_Boolean' != 'System_UInt64' )
              & ( 'System_Array' != 'System_Int32' )
              & ( allocated != 'SharingMode_LockProtected' )
              & ( 'PeerGroupPlaceholder' != 'System_Int16' )
              & ( 'System_Int64' != 'Factorial' )
              & ( 'ArrayCategoryRef' != 'System_Int16' )
              & ( exposeVersion != 'System_SByte' )
              & ( 'System_String' != 'System_IComparable' )
              & ( 'NonNullFieldsAreInitialized' != 'FirstConsistentOwner' )
              & ( ownerFrame != 'ArrayCategoryRef' )
              & ( inv != 'PeerGroupPlaceholder' )
              & ( sharingMode != 'System_SByte' )
              & ( sharingMode != 'System_Char' )
              & ( 'ArrayCategoryValue' != 'System_IEquatable_1___System_String' )
              & ( sharingMode != 'ArrayCategoryInt' )
              & ( 'System_Int32' != 'System_IComparable_1___System_String' )
              & ( 'System_Type' != stringLiteral0 )
              & ( 'PeerGroupPlaceholder' != 'System_UInt64' )
              & ( 'ArrayCategoryValue' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Boolean' != 'System_Int16' )
              & ( localinv != 'Factorial' )
              & ( 'System_Collections_IEnumerable' != stringLiteral0 )
              & ( 'ArrayCategoryInt' != 'ArrayCategoryNonNullRef' )
              & ( elements != exposeVersion )
              & ( 'ArrayCategoryValue' != 'Factorial' )
              & ( inv != 'System_UInt16' )
              & ( 'System_Int32' != 'System_Int64' )
              & ( 'System_Int64' != stringLiteral0 )
              & ( 'SharingMode_LockProtected' != 'System_Collections_IEnumerable' )
              & ( 'System_Int16' != 'System_Int64' )
              & ( elements != 'SharingMode_Unshared' )
              & ( 'PeerGroupPlaceholder' != 'System_Int32' )
              & ( inv != 'System_Type' )
              & ( ownerRef != 'System_UInt64' )
              & ( 'ArrayCategoryInt' != 'NonNullFieldsAreInitialized' )
              & ( exposeVersion != 'ArrayCategoryNonNullRef' )
              & ( localinv != ownerFrame )
              & ( 'SharingMode_Unshared' != 'System_IConvertible' )
              & ( sharingMode != 'System_Array' )
              & ( 'System_Int16' != 'System_Collections_IEnumerable' )
              & ( 'SharingMode_LockProtected' != 'System_IComparable_1___System_String' )
              & ( 'PeerGroupPlaceholder' != 'System_Collections_IEnumerable' )
              & ( localinv != 'SharingMode_Unshared' )
              & ( 'System_Object' != 'System_IConvertible' )
              & ( localinv != 'System_String' )
              & ( ownerRef != 'System_UInt32' )
              & ( exposeVersion != stringLiteral0 )
              & ( 'System_Int16' != 'Factorial' )
              & ( 'System_Byte' != 'System_UIntPtr' )
              & ( 'NonNullFieldsAreInitialized' != 'System_SByte' )
              & ( 'System_Char' != 'Factorial' )
              & ( allocated != 'PeerGroupPlaceholder' )
              & ( 'ArrayCategoryRef' != 'System_IComparable_1___System_String' )
              & ( 'System_IComparable_1___System_String' != 'System_IComparable' )
              & ( inv != 'System_UInt64' )
              & ( 'SharingMode_LockProtected' != 'System_IEquatable_1___System_String' )
              & ( 'ArrayCategoryValue' != 'System_Collections_IEnumerable' )
              & ( 'System_UInt32' != 'System_IntPtr' )
              & ( elements != 'System_IComparable_1___System_String' )
              & ( allocated != 'System_UInt64' )
              & ( 'System_Char' != 'System_IComparable_1___System_String' )
              & ( inv != 'System_Array' )
              & ( 'System_Array' != 'System_Int16' )
              & ( sharingMode != 'System_Int32' )
              & ( 'System_UIntPtr' != 'System_IConvertible' )
              & ( 'System_Boolean' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Char' != stringLiteral0 )
              & ( elements != 'System_IEquatable_1___System_String' )
              & ( 'System_Byte' != 'System_UInt32' )
              & ( localinv != 'System_Array' )
              & ( localinv != sharingMode )
              & ( 'FirstConsistentOwner' != 'System_IntPtr' )
              & ( 'SharingMode_Unshared' != 'System_UInt32' )
              & ( 'System_Int64' != 'System_UIntPtr' )
              & ( inv != 'ArrayCategoryInt' )
              & ( exposeVersion != 'System_Array' )
              & ( 'ArrayCategoryNonNullRef' != 'System_IComparable' )
              & ( 'System_Int64' != 'System_IntPtr' )
              & ( allocated != 'System_ICloneable' )
              & ( ownerRef != 'ArrayCategoryRef' )
              & ( 'System_Int16' != 'System_IEquatable_1___System_String' )
              & ( localinv != 'System_UIntPtr' )
              & ( 'ArrayCategoryValue' != 'FirstConsistentOwner' )
              & ( 'ArrayCategoryValue' != 'System_SByte' )
              & ( sharingMode != 'System_IComparable_1___System_String' )
              & ( 'System_Int32' != 'System_ICloneable' )
              & ( 'SharingMode_Unshared' != 'System_IComparable_1___System_String' )
              & ( 'SharingMode_LockProtected' != 'ArrayCategoryNonNullRef' )
              & ( 'System_UInt16' != 'System_ICloneable' )
              & ( 'PeerGroupPlaceholder' != 'FirstConsistentOwner' )
              & ( 'System_IComparable_1___System_String' != 'System_Collections_IEnumerable' )
              & ( 'System_Char' != 'System_IConvertible' )
              & ( ownerFrame != 'Factorial' )
              & ( exposeVersion != 'SharingMode_LockProtected' )
              & ( 'SharingMode_Unshared' != 'System_Collections_IEnumerable' )
              & ( 'SharingMode_LockProtected' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_UIntPtr' != stringLiteral0 )
              & ( 'FirstConsistentOwner' != 'System_Collections_IEnumerable' )
              & ( sharingMode != ownerRef )
              & ( 'PeerGroupPlaceholder' != 'NonNullFieldsAreInitialized' )
              & ( 'System_UInt16' != 'System_UIntPtr' )
              & ( localinv != 'System_UInt16' )
              & ( 'SharingMode_Unshared' != 'ArrayCategoryNonNullRef' )
              & ( 'System_IConvertible' != 'System_IComparable' )
              & ( exposeVersion != 'FirstConsistentOwner' )
              & ( 'ArrayCategoryRef' != 'FirstConsistentOwner' )
              & ( 'System_UIntPtr' != 'System_IntPtr' )
              & ( ownerFrame != 'System_String' )
              & ( 'System_UIntPtr' != 'System_IComparable_1___System_String' )
              & ( 'ArrayCategoryValue' != 'System_Char' )
              & ( localinv != 'System_IComparable' )
              & ( allocated != 'System_UIntPtr' )
              & ( 'System_Int32' != 'System_Collections_IEnumerable' )
              & ( 'System_SByte' != 'System_UIntPtr' )
              & ( ownerFrame != 'System_Char' )
              & ( allocated != 'ArrayCategoryRef' )
              & ( ownerFrame != 'System_UIntPtr' )
              & ( 'System_Int64' != 'System_IComparable' )
              & ( allocated != 'System_IComparable_1___System_String' )
              & ( 'Factorial' != 'System_Collections_IEnumerable' )
              & ( allocated != 'System_Type' )
              & ( 'System_ICloneable' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Object' != 'System_UInt64' )
              & ( localinv != 'ArrayCategoryValue' )
              & ( 'System_UInt32' != 'System_Char' )
              & ( 'System_Boolean' != 'System_UInt32' )
              & ( ownerFrame != 'System_ICloneable' )
              & ( 'System_UInt64' != 'System_IEquatable_1___System_String' )
              & ( sharingMode != 'FirstConsistentOwner' )
              & ( ownerFrame != 'System_Int64' )
              & ( allocated != 'System_UInt16' )
              & ( 'System_Int16' != 'System_UInt16' )
              & ( allocated != 'System_IEquatable_1___System_String' )
              & ( 'System_Object' != 'System_IEquatable_1___System_String' )
              & ( 'ArrayCategoryInt' != 'System_UInt64' )
              & ( ownerRef != 'System_IConvertible' )
              & ( allocated != 'System_IConvertible' )
              & ( inv != 'SharingMode_LockProtected' )
              & ( 'FirstConsistentOwner' != 'System_UIntPtr' )
              & ( 'System_UInt16' != 'System_Collections_IEnumerable' )
              & ( 'System_Int32' != 'System_UInt32' )
              & ( 'System_UInt16' != 'System_IComparable_1___System_String' )
              & ( 'PeerGroupPlaceholder' != 'Factorial' )
              & ( elements != 'System_IConvertible' )
              & ( allocated != 'SharingMode_Unshared' )
              & ( 'System_Type' != 'System_String' )
              & ( inv != 'ArrayCategoryRef' )
              & ( 'ArrayCategoryNonNullRef' != 'System_IEquatable_1___System_String' )
              & ( elements != 'FirstConsistentOwner' )
              & ( 'System_UInt16' != 'System_Char' )
              & ( 'SharingMode_LockProtected' != 'System_Byte' )
              & ( 'System_Object' != 'System_String' )
              & ( elements != 'System_Byte' )
              & ( exposeVersion != 'System_IComparable_1___System_String' )
              & ( 'System_String' != 'System_IEquatable_1___System_String' )
              & ( 'System_Boolean' != 'System_IComparable_1___System_String' )
              & ( 'System_Array' != 'System_UInt32' )
              & ( 'System_Object' != 'System_UInt16' )
              & ( ownerRef != 'System_Int16' )
              & ( 'System_String' != 'FirstConsistentOwner' )
              & ( 'System_Array' != 'System_IComparable_1___System_String' )
              & ( 'ArrayCategoryValue' != stringLiteral0 )
              & ( 'ArrayCategoryValue' != 'NonNullFieldsAreInitialized' )
              & ( exposeVersion != 'System_UIntPtr' )
              & ( 'System_Int32' != 'System_Char' )
              & ( localinv != 'NonNullFieldsAreInitialized' )
              & ( 'NonNullFieldsAreInitialized' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_IComparable' != stringLiteral0 )
              & ( inv != 'ArrayCategoryValue' )
              & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_Collections_IEnumerable' )
              & ( 'System_Object' != 'FirstConsistentOwner' )
              & ( 'ArrayCategoryRef' != 'System_Type' )
              & ( 'System_Int32' != 'System_UInt64' )
              & ( ownerFrame != 'System_Int16' )
              & ( 'System_Type' != 'System_UInt32' )
              & ( 'System_Byte' != 'System_IComparable_1___System_String' )
              & ( 'System_String' != 'System_Int64' )
              & ( 'System_String' != 'System_IntPtr' )
              & ( 'System_Type' != 'System_UInt64' )
              & ( exposeVersion != 'SharingMode_Unshared' )
              & ( 'ArrayCategoryInt' != 'System_UIntPtr' )
              & ( ownerRef != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'ArrayCategoryInt' != 'System_Int16' )
              & ( elements != localinv )
              & ( 'ArrayCategoryNonNullRef' != 'System_ICloneable' )
              & ( 'System_UInt64' != 'System_IComparable_1___System_String' )
              & ( 'PeerGroupPlaceholder' != 'System_String' )
              & ( 'ArrayCategoryInt' != 'System_IConvertible' )
              & ( 'System_String' != 'System_UInt32' )
              & ( 'SharingMode_Unshared' != 'System_UIntPtr' )
              & ( 'System_Type' != 'System_Byte' )
              & ( 'System_Array' != 'System_UIntPtr' )
              & ( 'SharingMode_Unshared' != 'System_Boolean' )
              & ( elements != ownerFrame )
              & ( inv != 'System_Object' )
              & ( inv != 'SharingMode_Unshared' )
              & ( 'ArrayCategoryRef' != 'System_UInt32' )
              & ( 'System_SByte' != 'System_IComparable_1___System_String' )
              & ( 'System_UIntPtr' != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_Unshared' != 'NonNullFieldsAreInitialized' )
              & ( 'SharingMode_LockProtected' != 'System_Boolean' )
              & ( allocated != exposeVersion )
              & ( localinv != 'System_IConvertible' )
              & ( 'PeerGroupPlaceholder' != 'System_IComparable_1___System_String' )
              & ( 'System_Array' != 'System_SByte' )
              & ( allocated != 'System_Boolean' )
              & ( 'System_Byte' != stringLiteral0 )
              & ( 'ArrayCategoryInt' != 'System_IComparable' )
              & ( 'ArrayCategoryNonNullRef' != 'FirstConsistentOwner' )
              & ( 'System_Byte' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_String' != 'System_IComparable_1___System_String' )
              & ( allocated != 'NonNullFieldsAreInitialized' )
              & ( 'System_Int64' != 'System_ICloneable' )
              & ( 'System_Array' != 'System_Type' )
              & ( ownerRef != 'System_Int64' )
              & ( 'System_Array' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( exposeVersion != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_Unshared' != 'System_Int64' )
              & ( localinv != ownerRef )
              & ( 'PeerGroupPlaceholder' != 'System_Byte' )
              & ( sharingMode != 'System_UInt16' )
              & ( elements != ownerRef )
              & ( 'SharingMode_LockProtected' != 'System_Int16' )
              & ( 'System_IEquatable_1___System_String' != 'System_Collections_IEnumerable' )
              & ( 'FirstConsistentOwner' != 'System_IComparable' )
              & ( exposeVersion != 'ArrayCategoryValue' )
              & ( 'System_IEquatable_1___System_String' != 'Factorial' )
              & ( ownerFrame != 'System_Int32' )
              & ( 'System_Array' != 'Factorial' )
              & ( localinv != 'System_SByte' )
              & ( inv != stringLiteral0 )
              & ( 'FirstConsistentOwner' != 'System_SByte' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Object' )
              & ( exposeVersion != 'System_Char' )
              & ( 'System_UInt16' != 'System_IntPtr' )
              & ( 'System_Object' != 'NonNullFieldsAreInitialized' )
              & ( 'PeerGroupPlaceholder' != 'System_UInt32' )
              & ( 'System_SByte' != stringLiteral0 )
              & ( 'FirstConsistentOwner' != 'Factorial' )
              & ( 'System_Array' != 'System_UInt16' )
              & ( 'SharingMode_LockProtected' != 'System_UInt64' )
              & ( 'System_Type' != 'System_ICloneable' )
              & ( 'System_SByte' != 'System_Int32' )
              & ( 'ArrayCategoryValue' != 'ArrayCategoryNonNullRef' )
              & ( 'System_SByte' != 'System_UInt64' )
              & ( 'ArrayCategoryValue' != 'ArrayCategoryRef' )
              & ( 'System_Char' != 'System_UIntPtr' )
              & ( 'ArrayCategoryInt' != 'System_ICloneable' )
              & ( allocated != 'ArrayCategoryValue' )
              & ( 'System_UIntPtr' != 'Factorial' )
              & ( inv != 'System_ICloneable' )
              & ( 'System_SByte' != 'System_IConvertible' )
              & ( exposeVersion != 'System_Object' )
              & ( ownerFrame != 'System_IComparable_1___System_String' )
              & ( 'ArrayCategoryInt' != 'System_Collections_IEnumerable' )
              & ( 'System_IEquatable_1___System_String' != 'System_IComparable_1___System_String' )
              & ( 'ArrayCategoryNonNullRef' != 'System_UIntPtr' )
              & ( 'ArrayCategoryRef' != 'System_SByte' )
              & ( localinv != 'System_Object' )
              & ( 'System_Array' != 'System_Byte' )
              & ( 'System_SByte' != 'System_Byte' )
              & ( 'System_Object' != 'System_UInt32' )
              & ( 'FirstConsistentOwner' != 'System_UInt64' )
              & ( 'ArrayCategoryInt' != 'System_UInt32' )
              & ( ownerRef != 'System_UIntPtr' )
              & ( sharingMode != 'PeerGroupPlaceholder' )
              & ( ownerRef != 'System_IntPtr' )
              & ( allocated != 'System_Byte' )
              & ( 'PeerGroupPlaceholder' != 'System_UIntPtr' )
              & ( 'SharingMode_LockProtected' != stringLiteral0 )
              & ( elements != 'System_UInt64' )
              & ( 'System_Char' != 'System_Collections_IEnumerable' )
              & ( 'System_Int32' != 'System_UIntPtr' )
              & ( 'PeerGroupPlaceholder' != 'System_Boolean' )
              & ( 'System_Type' != 'FirstConsistentOwner' )
              & ( allocated != 'ArrayCategoryNonNullRef' )
              & ( 'System_UInt32' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( exposeVersion != 'Factorial' )
              & ( 'SharingMode_LockProtected' != 'NonNullFieldsAreInitialized' )
              & ( 'System_Type' != 'System_Collections_IEnumerable' )
              & ( elements != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Object' != 'System_IComparable_1___System_String' )
              & ( 'System_Int32' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( sharingMode != 'System_IEquatable_1___System_String' )
              & ( ownerFrame != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_LockProtected' != 'System_UInt16' )
              & ( 'System_IComparable_1___System_String' != stringLiteral0 )
              & ( 'FirstConsistentOwner' != 'System_UInt16' )
              & ( 'ArrayCategoryValue' != 'System_String' )
              & ( 'System_IEquatable_1___System_String' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( ownerFrame != 'System_Byte' )
              & ( 'System_Object' != 'System_SByte' )
              & ( 'ArrayCategoryValue' != 'System_IntPtr' )
              & ( elements != 'System_SByte' )
              & ( 'System_Char' != 'System_IComparable' )
              & ( 'NonNullFieldsAreInitialized' != 'System_String' )
              & ( 'System_UInt16' != 'Factorial' )
              & ( 'ArrayCategoryRef' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( exposeVersion != 'System_Int32' )
              & ( 'ArrayCategoryValue' != 'System_UInt64' )
              & ( exposeVersion != 'System_Collections_IEnumerable' )
              & ( 'SharingMode_LockProtected' != 'ArrayCategoryValue' )
              & ( 'System_UIntPtr' != 'System_Collections_IEnumerable' )
              & ( 'System_Byte' != 'System_IEquatable_1___System_String' )
              & ( 'System_IEquatable_1___System_String' != stringLiteral0 )
              & ( elements != 'System_Int16' )
              & ( 'System_Boolean' != 'Factorial' )
              & ( inv != 'ArrayCategoryNonNullRef' )
              & ( localinv != 'System_Boolean' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Type' )
              & ( 'FirstConsistentOwner' != 'System_Int32' )
              & ( sharingMode != 'System_String' )
              & ( 'ArrayCategoryValue' != 'ArrayCategoryInt' )
              & ( 'PeerGroupPlaceholder' != 'System_Object' )
              & ( 'System_String' != 'System_UIntPtr' )
              & ( 'ArrayCategoryInt' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( allocated != 'Factorial' )
              & ( 'ArrayCategoryRef' != 'System_UInt64' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Int32' )
              & ( 'System_Array' != 'System_IConvertible' )
              & ( inv != ownerFrame )
              & ( allocated != 'System_Int32' )
              & ( 'ArrayCategoryInt' != 'Factorial' )
              & ( 'SharingMode_Unshared' != 'System_IntPtr' )
              & ( inv != 'System_IComparable_1___System_String' )
              & ( ownerRef != 'ArrayCategoryNonNullRef' )
              & ( 'ArrayCategoryInt' != 'ArrayCategoryRef' )
              & ( allocated != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Int16' != 'System_Char' )
              & ( ownerFrame != 'System_Object' )
              & ( 'System_Object' != 'System_UIntPtr' )
              & ( 'System_Byte' != 'System_Collections_IEnumerable' )
              & ( 'System_Boolean' != 'System_SByte' )
              & ( sharingMode != 'SharingMode_Unshared' )
              & ( 'System_IntPtr' != 'Factorial' )
              & ( ownerFrame != 'FirstConsistentOwner' )
              & ( 'System_IConvertible' != 'System_Collections_IEnumerable' )
              & ( 'SharingMode_Unshared' != 'System_ICloneable' )
              & ( ownerRef != stringLiteral0 )
              & ( 'ArrayCategoryRef' != 'System_UInt16' )
              & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'Factorial' )
              & ( 'System_Type' != 'System_Int16' )
              & ( inv != 'System_UInt32' )
              & ( ownerFrame != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_UInt32' != 'System_IComparable_1___System_String' )
              & ( 'FirstConsistentOwner' != 'System_Int64' )
              & ( 'ArrayCategoryRef' != 'Factorial' )
              & ( 'System_Int64' != 'System_IComparable_1___System_String' )
              & ( 'System_Array' != 'System_IEquatable_1___System_String' )
              & ( inv != exposeVersion )
              & ( sharingMode != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( allocated != 'System_String' )
              & ( allocated != 'System_Collections_IEnumerable' )
              & ( inv != 'System_Collections_IEnumerable' )
              & ( 'System_String' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'FirstConsistentOwner' != 'System_Int16' )
              & ( 'NonNullFieldsAreInitialized' != 'System_UInt16' )
              & ( 'System_Type' != 'Factorial' )
              & ( 'ArrayCategoryInt' != 'System_String' )
              & ( inv != 'System_IConvertible' )
              & ( 'System_String' != 'System_SByte' )
              & ( 'PeerGroupPlaceholder' != 'System_IConvertible' )
              & ( sharingMode != ownerFrame )
              & ( 'SharingMode_LockProtected' != 'System_IComparable' )
              & ( elements != 'System_Int64' )
              & ( 'ArrayCategoryInt' != 'System_IComparable_1___System_String' )
              & ( exposeVersion != 'PeerGroupPlaceholder' )
              & ( 'ArrayCategoryNonNullRef' != 'System_UInt32' )
              & ( inv != 'FirstConsistentOwner' )
              & ( 'SharingMode_Unshared' != 'ArrayCategoryInt' )
              & ( 'System_UInt32' != 'System_UInt64' )
              & ( 'System_Byte' != 'System_Int16' )
              & ( sharingMode != 'System_Byte' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Byte' )
              & ( ownerFrame != 'System_UInt64' )
              & ( ownerFrame != 'NonNullFieldsAreInitialized' )
              & ( 'System_Int16' != 'System_IComparable_1___System_String' )
              & ( 'SharingMode_Unshared' != 'Factorial' )
              & ( 'SharingMode_LockProtected' != 'System_Char' )
              & ( 'System_UInt32' != 'Factorial' )
              & ( sharingMode != 'ArrayCategoryNonNullRef' )
              & ( 'System_Type' != 'System_IntPtr' )
              & ( 'SharingMode_Unshared' != 'System_Char' )
              & ( 'ArrayCategoryInt' != 'System_Type' )
              & ( 'System_Int32' != 'System_IConvertible' )
              & ( 'PeerGroupPlaceholder' != 'System_Char' )
              & ( 'System_Object' != 'System_Collections_IEnumerable' )
              & ( 'System_ICloneable' != 'Factorial' )
              & ( elements != 'ArrayCategoryValue' )
              & ( 'System_SByte' != 'System_IntPtr' )
              & ( ownerFrame != 'System_SByte' )
              & ( 'System_Int64' != 'System_IConvertible' )
              & ( 'System_Byte' != 'System_Int32' )
              & ( 'SharingMode_LockProtected' != 'PeerGroupPlaceholder' )
              & ( ownerFrame != 'System_UInt32' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Int64' )
              & ( 'ArrayCategoryRef' != stringLiteral0 )
              & ( 'PeerGroupPlaceholder' != 'System_Int64' )
              & ( localinv != 'System_Char' )
              & ( 'PeerGroupPlaceholder' != 'System_IComparable' )
              & ( 'System_IEquatable_1___System_String' != 'System_IComparable' )
              & ( 'FirstConsistentOwner' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( allocated != 'System_Char' )
              & ( 'System_Array' != 'System_String' )
              & ( 'System_Int64' != 'System_UInt64' )
              & ( 'System_UInt64' != stringLiteral0 )
              & ( 'SharingMode_LockProtected' != 'System_Type' )
              & ( localinv != 'System_ICloneable' )
              & ( localinv != 'System_Int64' )
              & ( 'System_UIntPtr' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'SharingMode_LockProtected' != 'System_IntPtr' )
              & ( 'System_UInt32' != 'System_UIntPtr' )
              & ( inv != localinv )
              & ( exposeVersion != 'ArrayCategoryRef' )
              & ( exposeVersion != 'ArrayCategoryInt' )
              & ( 'ArrayCategoryRef' != 'System_Object' )
              & ( exposeVersion != 'System_Type' )
              & ( exposeVersion != 'System_UInt64' )
              & ( 'System_Array' != 'System_IntPtr' )
              & ( sharingMode != stringLiteral0 )
              & ( localinv != 'System_Int16' )
              & ( 'System_UIntPtr' != 'System_ICloneable' )
              & ( allocated != sharingMode )
              & ( 'PeerGroupPlaceholder' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( ownerRef != 'System_String' )
              & ( 'System_Boolean' != 'System_IntPtr' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Int16' )
              & ( 'ArrayCategoryInt' != 'FirstConsistentOwner' )
              & ( elements != stringLiteral0 )
              & ( 'System_Type' != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_LockProtected' != 'ArrayCategoryRef' )
              & ( ownerFrame != 'ArrayCategoryInt' )
              & ( 'System_Object' != 'System_Int16' )
              & ( elements != 'PeerGroupPlaceholder' )
              & ( exposeVersion != sharingMode )
              & ( exposeVersion != ownerFrame )
              & ( sharingMode != 'System_Boolean' )
              & ( 'System_Int64' != 'System_Char' )
              & ( 'System_ICloneable' != 'System_IComparable' )
              & ( elements != 'System_Array' )
              & ( 'System_Int16' != 'System_Int32' )
              & ( allocated != localinv )
              & ( ownerFrame != 'ArrayCategoryValue' )
              & ( allocated != ownerRef )
              & ( 'System_String' != 'System_Collections_IEnumerable' )
              & ( 'System_Type' != 'System_IComparable' )
              & ( 'System_SByte' != 'System_ICloneable' )
              & ( localinv != 'System_Byte' )
              & ( 'System_UInt64' != 'System_IntPtr' )
              & ( 'System_Array' != 'System_IComparable' )
              & ( allocated != 'System_UInt32' )
              & ( elements != 'ArrayCategoryRef' )
              & ( 'System_UInt64' != 'System_Char' )
              & ( 'System_Char' != 'System_IEquatable_1___System_String' )
              & ( 'System_Char' != 'System_IntPtr' )
              & ( 'System_Type' != 'NonNullFieldsAreInitialized' )
              & ( ownerRef != ownerFrame )
              & ( 'SharingMode_Unshared' != 'ArrayCategoryRef' )
              & ( 'FirstConsistentOwner' != 'System_IConvertible' )
              & ( 'ArrayCategoryRef' != 'System_IEquatable_1___System_String' )
              & ( 'System_Int16' != 'System_UInt64' )
              & ( sharingMode != 'System_Type' )
              & ( elements != 'ArrayCategoryNonNullRef' )
              & ( 'System_Byte' != 'System_Int64' )
              & ( 'SharingMode_Unshared' != 'SharingMode_LockProtected' )
              & ( 'ArrayCategoryValue' != 'System_Boolean' )
              & ( 'System_Byte' != 'System_Char' )
              & ( 'System_IConvertible' != 'Factorial' )
              & ( 'ArrayCategoryRef' != 'ArrayCategoryNonNullRef' )
              & ( localinv != 'System_IntPtr' )
              & ( 'System_IntPtr' != 'System_IEquatable_1___System_String' )
              & ( 'System_Int32' != 'System_IntPtr' )
              & ( 'ArrayCategoryValue' != 'System_ICloneable' )
              & ( 'System_String' != 'System_IConvertible' )
              & ( 'ArrayCategoryInt' != 'System_Array' )
              & ( 'System_String' != 'System_ICloneable' )
              & ( 'System_Array' != stringLiteral0 )
              & ( allocated != 'ArrayCategoryInt' )
              & ( exposeVersion != 'NonNullFieldsAreInitialized' )
              & ( 'System_IConvertible' != 'System_IComparable_1___System_String' )
              & ( 'NonNullFieldsAreInitialized' != 'System_Byte' )
              & ( 'SharingMode_Unshared' != 'System_Type' )
              & ( 'System_String' != 'System_UInt64' )
              & ( localinv != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Int16' != 'System_UIntPtr' )
              & ( elements != 'System_IComparable' )
              & ( localinv != 'System_IEquatable_1___System_String' )
              & ( 'ArrayCategoryRef' != 'System_ICloneable' )
              & ( 'SharingMode_LockProtected' != 'System_UInt32' )
              & ( 'ArrayCategoryNonNullRef' != 'System_UInt64' )
              & ( 'PeerGroupPlaceholder' != 'System_ICloneable' )
              & ( 'System_UInt64' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( ownerFrame != 'System_Collections_IEnumerable' )
              & ( 'System_Array' != 'System_UInt64' )
              & ( 'ArrayCategoryRef' != 'System_Collections_IEnumerable' )
              & ( 'SharingMode_Unshared' != 'System_UInt64' )
              & ( ownerRef != 'ArrayCategoryValue' )
              & ( 'System_UInt64' != 'System_IConvertible' )
              & ( sharingMode != 'System_IntPtr' )
              & ( 'ArrayCategoryRef' != 'System_Boolean' )
              & ( 'System_SByte' != 'System_IEquatable_1___System_String' )
              & ( allocated != 'System_Int16' )
              & ( localinv != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryNonNullRef' != 'Factorial' )
              & ( localinv != 'SharingMode_LockProtected' )
              & ( 'NonNullFieldsAreInitialized' != 'System_Int16' )
              & ( exposeVersion != ownerRef )
              & ( 'System_Type' != 'System_Int32' )
              & ( 'PeerGroupPlaceholder' != 'ArrayCategoryInt' )
              & ( 'System_ICloneable' != 'System_IComparable_1___System_String' )
              & ( 'System_Int16' != stringLiteral0 )
              & ( 'ArrayCategoryValue' != 'System_Byte' )
              & ( 'ArrayCategoryInt' != 'System_Object' )
              & ( inv != 'System_String' )
              & ( inv != 'System_Int16' )
              & ( ownerFrame != 'PeerGroupPlaceholder' )
              & ( elements != inv )
              & ( localinv != stringLiteral0 )
              & ( elements != 'System_UInt16' )
              & ( sharingMode != 'ArrayCategoryValue' )
              & ( 'System_Boolean' != 'FirstConsistentOwner' )
              & ( 'System_Char' != 'System_ICloneable' )
              & ( 'System_Object' != 'System_Int32' )
              & ( 'System_Array' != 'System_Object' )
              & ( ownerRef != 'System_IComparable_1___System_String' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Collections_IEnumerable' )
              & ( 'PeerGroupPlaceholder' != 'ArrayCategoryRef' )
              & ( exposeVersion != 'System_UInt32' )
              & ( 'System_Int32' != 'System_IEquatable_1___System_String' )
              & ( 'System_String' != 'System_Byte' )
              & ( 'System_IntPtr' != 'System_IComparable_1___System_String' )
              & ( 'System_String' != 'System_Int16' )
              & ( 'SharingMode_Unshared' != 'System_Int32' )
              & ( 'System_UInt32' != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_Unshared' != 'System_IEquatable_1___System_String' )
              & ( ownerFrame != 'System_Array' )
              & ( 'System_Array' != 'NonNullFieldsAreInitialized' )
              & ( 'System_Array' != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryNonNullRef' != stringLiteral0 )
              & ( 'ArrayCategoryValue' != 'System_IComparable' )
              & ( 'System_Type' != 'System_UIntPtr' )
              & ( 'System_UInt32' != 'System_Int64' )
              & ( 'System_UInt16' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'SharingMode_Unshared' != 'FirstConsistentOwner' )
              & ( 'ArrayCategoryNonNullRef' != 'System_IntPtr' )
              & ( 'SharingMode_Unshared' != ownerRef )
              & ( 'System_Byte' != 'System_UInt16' )
              & ( 'System_Boolean' != 'System_UIntPtr' )
              & ( exposeVersion != 'System_IComparable' )
              & ( 'System_Int64' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'NonNullFieldsAreInitialized' != 'Factorial' )
              & ( elements != 'System_UIntPtr' )
              & ( 'System_UInt64' != 'System_UIntPtr' )
              & ( inv != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'SharingMode_Unshared' != stringLiteral0 )
              & ( inv != 'System_Boolean' )
              & ( inv != 'System_IComparable' )
              & ( 'System_Type' != 'System_UInt16' )
              & ( exposeVersion != 'System_IConvertible' )
              & ( 'System_String' != 'Factorial' )
              & ( 'System_IntPtr' != stringLiteral0 )
              & ( 'System_ICloneable' != 'System_IConvertible' )
              & ( ownerRef != 'FirstConsistentOwner' )
              & ( exposeVersion != 'System_IntPtr' )
              & ( 'System_Byte' != 'System_IConvertible' )
              & ( allocated != inv )
              & ( sharingMode != 'System_ICloneable' )
              & ( 'System_UInt64' != 'System_ICloneable' )
              & ( ownerRef != 'NonNullFieldsAreInitialized' )
              & ( 'System_Boolean' != 'System_Object' )
              & ( 'System_Object' != 'System_Type' )
              & ( inv != 'System_UIntPtr' )
              & ( 'ArrayCategoryRef' != 'System_Int32' )
              & ( sharingMode != 'NonNullFieldsAreInitialized' )
              & ( ownerRef != 'System_ICloneable' )
              & ( 'SharingMode_LockProtected' != 'System_Int64' )
              & ( 'System_Boolean' != 'System_UInt16' )
              & ( 'ArrayCategoryNonNullRef' != 'System_IComparable_1___System_String' )
              & ( elements != 'System_String' )
              & ( 'ArrayCategoryNonNullRef' != 'System_String' )
              & ( 'System_Array' != 'System_ICloneable' )
              & ( 'System_Object' != stringLiteral0 )
              & ( 'ArrayCategoryValue' != 'System_UIntPtr' )
              & ( 'ArrayCategoryRef' != 'System_IComparable' )
              & ( 'System_Int64' != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryValue' != 'System_Object' )
              & ( 'System_Byte' != 'System_UInt64' )
              & ( 'System_UInt16' != 'System_UInt32' )
              & ( 'ArrayCategoryValue' != 'System_IConvertible' )
              & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != stringLiteral0 )
              & ( 'System_SByte' != 'System_Char' )
              & ( 'System_String' != stringLiteral0 )
              & ( 'System_UInt64' != 'Factorial' )
              & ( 'System_IConvertible' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( localinv != 'System_IComparable_1___System_String' )
              & ( 'SharingMode_Unshared' != 'System_Array' )
              & ( 'System_SByte' != 'Factorial' )
              & ( elements != sharingMode )
              & ( 'SharingMode_LockProtected' != 'ArrayCategoryInt' )
              & ( ownerFrame != 'ArrayCategoryNonNullRef' )
              & ( 'System_Array' != 'System_Boolean' )
              & ( localinv != exposeVersion )
              & ( 'System_UInt16' != 'System_IComparable' )
              & ( 'SharingMode_LockProtected' != 'System_IConvertible' )
              & ( ownerRef != 'System_Byte' )
              & ( 'NonNullFieldsAreInitialized' != 'System_UIntPtr' )
              & ( 'System_IComparable' != 'System_Collections_IEnumerable' )
              & ( 'NonNullFieldsAreInitialized' != stringLiteral0 )
              & ( 'SharingMode_LockProtected' != 'System_SByte' )
              & ( 'FirstConsistentOwner' != 'System_Char' )
              & ( 'System_String' != 'System_Int32' )
              & ( 'ArrayCategoryInt' != 'System_IntPtr' )
              & ( 'PeerGroupPlaceholder' != 'System_IEquatable_1___System_String' )
              & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_IComparable' )
              & ( ownerFrame != 'System_IConvertible' )
              & ( 'NonNullFieldsAreInitialized' != 'System_Int64' )
              & ( exposeVersion != 'System_Int64' )
              & ( ownerRef != 'System_Object' )
              & ( elements != 'Factorial' )
              & ( 'FirstConsistentOwner' != 'System_UInt32' )
              & ( 'System_UIntPtr' != 'System_IComparable' )
              & ( elements != 'System_Collections_IEnumerable' )
              & ( sharingMode != 'ArrayCategoryRef' )
              & ( ownerRef != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_LockProtected' != 'System_Int32' )
              & ( 'System_Boolean' != 'NonNullFieldsAreInitialized' )
              & ( 'System_SByte' != 'System_Int16' )
              & ( 'System_Byte' != 'Factorial' )
              & ( 'PeerGroupPlaceholder' != 'System_Type' )
              & ( 'System_Array' != 'FirstConsistentOwner' )
              & ( sharingMode != 'Factorial' )
              & ( 'ArrayCategoryValue' != 'System_Array' )
              & ( inv != 'System_Char' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Boolean' )
              & ( 'System_ICloneable' != 'System_IEquatable_1___System_String' )
              & ( allocated != 'System_IComparable' )
              & ( ownerRef != 'System_Array' )
              & ( 'FirstConsistentOwner' != 'System_IEquatable_1___System_String' )
              & ( elements != 'System_ICloneable' )
              & ( 'System_UInt16' != 'System_IConvertible' )
              & ( 'System_UInt64' != 'System_Collections_IEnumerable' )
              & ( 'System_UInt32' != 'System_Collections_IEnumerable' )
              & ( exposeVersion != 'System_UInt16' )
              & ( 'PeerGroupPlaceholder' != 'System_SByte' )
              & ( 'ArrayCategoryNonNullRef' != 'System_IConvertible' )
              & ( 'System_UInt32' != 'System_IComparable' )
              & ( 'PeerGroupPlaceholder' != 'System_UInt16' )
              & ( ownerRef != 'System_Int32' )
              & ( 'NonNullFieldsAreInitialized' != 'System_UInt32' )
              & ( ownerRef != 'PeerGroupPlaceholder' )
              & ( exposeVersion != 'System_String' )
              & ( 'System_SByte' != 'System_UInt16' )
              & ( inv != sharingMode )
              & ( 'NonNullFieldsAreInitialized' != 'System_ICloneable' )
              & ( 'NonNullFieldsAreInitialized' != 'System_IEquatable_1___System_String' )
              & ( allocated != 'System_IntPtr' )
              & ( 'System_ICloneable' != stringLiteral0 )
              & ( 'NonNullFieldsAreInitialized' != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryRef' != 'System_Array' )
              & ( 'System_Int64' != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_LockProtected' != ownerFrame )
              & ( inv != 'System_Byte' )
              & ( 'System_IntPtr' != 'System_IConvertible' )
              & ( 'ArrayCategoryInt' != 'System_Int32' )
              & ( 'System_Int16' != 'System_ICloneable' )
              & ( 'SharingMode_LockProtected' != ownerRef )
              & ( elements != 'System_Type' )
              & ( inv != 'System_IEquatable_1___System_String' )
              & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_IComparable_1___System_String' )
              & ( 'System_Object' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'SharingMode_Unshared' != 'System_IComparable' )
              & ( 'System_UInt64' != 'System_IComparable' )
              & ( 'System_String' != 'System_Char' )
              & ( 'FirstConsistentOwner' != 'System_IComparable_1___System_String' )
              & ( sharingMode != 'System_UInt32' )
              & ( 'System_UInt16' != 'System_UInt64' )
              & ( 'ArrayCategoryInt' != 'System_Boolean' )
              & ( 'System_Object' != 'System_Int64' )
              & ( 'System_Object' != 'Factorial' )
              & ( 'SharingMode_Unshared' != 'PeerGroupPlaceholder' )
              & ( sharingMode != 'System_Int16' )
              & ( 'System_UInt32' != 'System_ICloneable' )
              & ( 'System_Object' != 'System_ICloneable' )
              & ( 'System_IntPtr' != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryNonNullRef' != 'System_SByte' )
              & ( elements != 'SharingMode_LockProtected' )
              & ( inv != ownerRef )
              & ( 'ArrayCategoryInt' != 'System_IEquatable_1___System_String' )
              & ( 'System_Object' != 'System_IntPtr' )
              & ( ownerFrame != 'System_UInt16' )
              & ( elements != 'System_Boolean' )
              & ( 'ArrayCategoryRef' != 'System_IConvertible' )
              & ( 'System_IntPtr' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Type' != 'System_SByte' )
              & ( ownerRef != 'System_Type' )
              & ( 'PeerGroupPlaceholder' != 'System_IntPtr' )
              & ( 'System_ICloneable' != 'System_Collections_IEnumerable' )
              & ( 'System_Int16' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Int32' != stringLiteral0 )
              & ( 'System_Type' != 'System_IConvertible' )
              & ( ownerFrame != 'System_IComparable' )
              & ( 'NonNullFieldsAreInitialized' != 'System_IComparable_1___System_String' )
              & ( 'System_Boolean' != 'System_Char' )
              & ( 'System_IConvertible' != stringLiteral0 )
              & ( 'SharingMode_LockProtected' != 'System_UIntPtr' )
              & ( 'System_UInt32' != stringLiteral0 )
              & ( ownerRef != 'ArrayCategoryInt' )
              & ( 'SharingMode_LockProtected' != 'System_Array' )
              & ( 'System_Boolean' != 'System_IComparable' )
              & ( 'ArrayCategoryInt' != 'System_Int64' )
              & ( sharingMode != 'System_UIntPtr' )
              & ( localinv != 'System_UInt64' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Array' )
              & ( 'System_Boolean' != 'System_ICloneable' )
              & ( localinv != 'System_Int32' )
              & ( 'PeerGroupPlaceholder' != stringLiteral0 )
              & ( 'Factorial' != stringLiteral0 )
              & ( ownerRef != 'System_Boolean' )
              & ( allocated != elements )
              & ( 'System_UInt16' != 'System_Int32' )
              & ( 'ArrayCategoryRef' != 'System_Int64' )
              & ( ownerFrame != 'System_Boolean' )
              & ( 'PeerGroupPlaceholder' != 'ArrayCategoryValue' )
              & ( 'System_Int16' != 'System_IConvertible' )
              & ( 'ArrayCategoryNonNullRef' != 'NonNullFieldsAreInitialized' )
              & ( localinv != 'System_Type' )
              & ( ownerRef != 'System_IComparable' )
              & ( 'ArrayCategoryInt' != 'System_Char' )
              & ( 'ArrayCategoryRef' != 'System_IntPtr' )
              & ( 'ArrayCategoryValue' != 'System_Type' )
              & ( 'ArrayCategoryRef' != 'System_String' )
              & ( 'System_Boolean' != 'System_String' )
              & ( 'System_Object' != 'System_Char' )
              & ( inv != 'System_Int32' )
              & ( 'System_SByte' != 'System_UInt32' )
              & ( 'SharingMode_Unshared' != 'System_UInt16' )
              & ( 'SharingMode_LockProtected' != 'Factorial' )
              & ( 'System_Byte' != 'System_IntPtr' )
              & ( 'System_Int32' != 'Factorial' )
              & ( 'PeerGroupPlaceholder' != 'ArrayCategoryNonNullRef' )
              & ( 'System_Boolean' != 'System_Int64' )
              & ( 'SharingMode_Unshared' != 'ArrayCategoryValue' )
              & ( sharingMode != 'System_Object' )
              & ( 'FirstConsistentOwner' != 'System_Byte' )
              & ( inv != 'System_IntPtr' ) )
          | ( 'IsStaticField'(inv) = true_1 )
          | ~ ! [X276: $int,X277: $int,X275: $int] : ( 'StructGet'('StructSet'(X276,X275,X277),X275) = X277 )
          | ~ ! [X281: $int,X278: $int,X280: $int,X279: $int] :
                ( ( true_1 != 'IsValueType'('UnboxedType'(X281)) )
               => ( 'BoxFunc'(X281,X280,X278,X279) = X281 ) )
          | ( 'IncludeInMainFrameCondition'(ownerFrame) != true_1 )
          | ~ ! [X282: $int] : ( true_1 != 'IsMemberlessType'(typeof(X282)) )
          | ~ ! [X285: $int,X283: $int,X284: $int] :
                ~ ( ~ ( ( true_1 = 'System_String_Equals_System_String_System_String'(X283,X284,X285) )
                    <=> ( true_1 = 'StringEquals'(X285,X284) ) )
                  | ~ ( ( X284 = X285 )
                     => ( true_1 = 'StringEquals'(X284,X285) ) )
                  | ~ ( ( true_1 = 'System_String_Equals_System_String_System_String'(X283,X284,X285) )
                    <=> ( true_1 = 'StringEquals'(X284,X285) ) ) )
          | ( x('Factorial','Factorial') != true_1 )
          | ~ ! [X286: $int,X287: $int,X289: $int,X288: $int] :
                ( ( true_1 = 'IsHeap'(X287) )
               => ( true_1 = 'InRange'(select2(X287,X286,'AsRangeField'(X288,X289)),X289) ) )
          | ~ $less(int_4294967295,int_9223372036854775807)
          | ~ ! [X290: $int] :
                ( ~ ( $less(X290,int_m2147483648)
                    | $less(int_2147483647,X290) )
              <=> ( true_1 = 'InRange'(X290,'System_Int32') ) )
          | ~ ! [X291: $int] :
              ? [X292: $int] :
                ( ~ ( ~ ( ( 'System_Object' != X291 )
                       => ( X291 != X292 ) )
                    | ( true_1 != x(X291,X292) ) )
                & ( 'BaseClass'(X291) = X292 ) )
          | ( 'IsImmutable'('System_String') != true_1 )
          | ~ ! [X295: $int,X294: $int,X293: $int] :
                ( ( true_1 = 'IsHeap'(X293) )
               => ( true_1 = 'InRange'('IntArrayGet'(select2(X293,X295,elements),X294),'ElementType'(typeof(X295))) ) )
          | ( x('System_IComparable_1___System_String','System_IComparable_1___System_String') != true_1 )
          | ( 'IsStaticField'(elements) = true_1 )
          | ( x('System_Collections_Generic_IEnumerable_1___System_Char','System_Collections_IEnumerable') != true_1 )
          | ~ ! [X296: $int,X297: $int] :
                ( ( true_1 = 'IsAllocated'(X297,X296) )
               => ( true_1 = select2(X297,X296,allocated) ) )
          | ~ ! [X299: $int,X300: $int,X298: $int] :
                ( ( true_1 = 'IsAllocated'(X300,X299) )
               => ( true_1 = 'IsAllocated'(X300,'ValueArrayGet'(X299,X298)) ) )
          | ( 'DeclType'('NonNullFieldsAreInitialized') != 'System_Object' )
          | ~ ! [X301: $int,X302: $int] :
                ( ( true_1 = 'IsHeap'(X302) )
               => ( 'PeerGroupPlaceholder' = select2(X302,'ClassRepr'(X301),ownerFrame) ) )
          | ( x('System_Type','System_Object') != true_1 )
          | ( x('System_Collections_IEnumerable','System_Collections_IEnumerable') != true_1 )
          | ~ ! [X303: $int,X304: $int] :
                ( ( nullObject != 'BoxTester'(X303,X304) )
              <=> ( 'UnboxedType'(X303) = X304 ) )
          | ( 'IsValueType'('System_Byte') != true_1 )
          | ~ ! [X306: $int,X305: $int] :
              ? [X307: $int] :
                ( ~ ( ~ ( ( X305 = X307 )
                        | ( X306 = X307 ) )
                    | $less(X307,X306)
                    | $less(X307,X305) )
                & ( max(X306,X305) = X307 ) )
          | ( 'IsMemberlessType'('System_IConvertible') != true_1 )
          | ( x('System_Collections_Generic_IEnumerable_1___System_Char','System_Object') != true_1 )
          | ~ ! [X310: $int,X311: $int,X312: $int] :
              ? [X313: $int,X314: $int] :
                ( ( select2(X310,X312,ownerRef) = X314 )
                & ( ~ ( ( true_1 != 'IsHeap'(X310) )
                      | ( 'PeerGroupPlaceholder' = X313 )
                      | ( nullObject = X312 )
                      | ( 'AsPureObject'(X312) != X312 )
                      | ( 'BaseClass'(X313) = select2(X310,X314,localinv) )
                      | ( true_1 != x(select2(X310,X314,inv),X313) )
                      | ( ( ~ true_1 ) = select2(X310,X312,allocated) ) )
                 => ( select2(X310,X312,X311) = 'FieldDependsOnFCO'(X312,X311,select2(X310,select2(X310,X312,'FirstConsistentOwner'),exposeVersion)) ) )
                & ( select2(X310,X312,ownerFrame) = X313 ) )
          | ( 'IsMemberlessType'('System_Collections_Generic_IEnumerable_1___System_Char') != true_1 )
          | ~ ! [X316: $int,X315: $int] :
                ( ~ $less(X316,1)
               => ( shr(X315,X316) = x_1(shr(X315,$sum(X316,$uminus(1))),2) ) )
          | ~ ! [X318: $int,X319: $int,X317: $int] :
              ? [X320: $int] :
                ( ( select2(X317,X319,'AsPeerField'(X318)) = X320 )
                & ( ~ ( ( nullObject = X320 )
                      | ( true_1 != 'IsHeap'(X317) ) )
                 => ~ ( ( select2(X317,X320,ownerRef) != select2(X317,X319,ownerRef) )
                      | ( select2(X317,X320,ownerFrame) != select2(X317,X319,ownerFrame) ) ) ) )
          | ( 'StringLength'(stringLiteral0) != 19 )
          | ( $sum(int_m2147483648,1) != $sum(0,$uminus(int_2147483647)) )
          | ~ ! [X321: $int,X322: $int] :
                ( ( nullObject != 'BoxTester'(X322,X321) )
               => ( 'Box'('Unbox'(X322),X322) = X322 ) )
          | ~ ! [X323: $int,X324: $int] :
              ? [X325: $int] :
                ( ( min(X324,X323) = X325 )
                & ~ ( $less(X324,X325)
                    | $less(X323,X325)
                    | ~ ( ( X323 = X325 )
                        | ( X324 = X325 ) ) ) )
          | ~ ! [X326: $int] :
                ( ( true_1 = 'InRange'(X326,'System_UInt32') )
              <=> ~ ( $less(int_4294967295,X326)
                    | $less(X326,0) ) )
          | ( 'IsImmutable'('Factorial') = true_1 )
          | ~ ! [X328: $int,X329: $int,X327: $int] :
                ( ( true_1 != X329 )
               => ( 'IfThenElse'(X329,X327,X328) = X328 ) )
          | ~ ! [X330: $int,X331: $int] :
              ? [X332: $int] :
                ( ~ ( ( true_1 != x(X332,X332) )
                    | ( true_1 != x(X332,'System_Array') ) )
                & ( 'RefArray'(X330,X331) = X332 ) )
          | ~ $less(int_m9223372036854775808,int_m2147483648)
          | ~ ( ( 'PurityAxiomsCanBeAssumed' = true_1 )
             => ! [X333: $int,X334: $int] :
                ? [X335: $int] :
                  ( ( ( true_1 = 'IsHeap'(X334) )
                   => ~ ( ~ ( ( 0 != X333 )
                           => ( $product(X333,'Factorial_recursiveFac_System_Int32'(X334,$sum(X333,$uminus(1)))) = X335 ) )
                        | ~ ( ( 0 = X333 )
                           => ( 1 = X335 ) ) ) )
                  & ( 'Factorial_recursiveFac_System_Int32'(X334,X333) = X335 ) ) )
          | ~ ! [X336: $int,X337: $int] :
                ( ( ~ $less(X336,0)
                  | ~ $less(X337,0) )
               => ~ $less(and_1(X337,X336),0) )
          | ~ ! [X341: $int,X338: $int,X339: $int,X340: $int] :
                ( ( X338 != X339 )
               => ( 'ValueArrayGet'(X341,X338) = 'ValueArrayGet'('ValueArraySet'(X341,X339,X340),X338) ) )
          | ~ ! [X342: $int] :
                ( ( true_1 = 'IsHeap'(X342) )
               => ( stringLiteral0 = 'System_String_IsInterned_System_String_notnull'(X342,stringLiteral0) ) )
          | ~ ! [X344: $int,X343: $int] :
              ? [X345: $int] :
                ( ~ ( ( true_1 != x(X345,X345) )
                    | ( true_1 != x(X345,'System_Array') ) )
                & ( 'NonNullRefArray'(X343,X344) = X345 ) )
          | ~ ! [X346: $int] :
                ( ( true_1 = 'InRange'(X346,'System_SByte') )
              <=> ~ ( $less(X346,$sum(0,$uminus(128)))
                    | ~ $less(X346,128) ) )
          | ~ ! [X347: $int] : ~ $less('StringLength'(X347),0)
          | ~ ! [X349: $int,X348: $int] : ( 'ElementType'('ValueArray'(X348,X349)) = X348 )
          | ( x('System_String','System_Collections_IEnumerable') != true_1 )
          | ~ ! [X350: $int,X351: $int,X352: $int] : ( 'ValueArrayGet'('ValueArraySet'(X352,X350,X351),X350) = X351 )
          | ~ ! [X355: $int,X353: $int,X354: $int] :
                ( ( true_1 = 'System_String_Equals_System_String_System_String'(X355,X354,X353) )
              <=> ( true_1 = 'System_String_Equals_System_String'(X355,X354,X353) ) )
          | ( 'AsInterface'('System_IEquatable_1___System_String') != 'System_IEquatable_1___System_String' )
          | ~ ! [X356: $int,X358: $int,X357: $int] :
              ? [X360: $int,X359: $int] :
                ( ( 'AsInterface'(X358) = X359 )
                & ( ~ ( ( X358 != X359 )
                      | ( X356 != X360 )
                      | ( true_1 != x('UnboxedType'(X360),X359) ) )
                 => ( true_1 = x(typeof(X356),X358) ) )
                & ( 'Box'(X357,X356) = X360 ) )
          | ~ ! [X361: $int,X363: $int,X364: $int,X362: $int] :
                ( ( X362 != X364 )
               => ( 'RefArrayGet'('RefArraySet'(X363,X362,X361),X364) = 'RefArrayGet'(X363,X364) ) )
          | ~ ! [X365: $int,X366: $int] : ( 'ElementType'('IntArray'(X366,X365)) = X366 )
          | ~ ! [X369: $int,X367: $int,X368: $int] :
              ? [X370: $int] :
                ( ( ~ ( ( true_1 != 'IsHeap'(X367) )
                      | ( nullObject = X370 ) )
                 => ( true_1 = x(typeof(X370),'ElementType'(typeof(X368))) ) )
                & ( 'RefArrayGet'(select2(X367,X368,elements),X369) = X370 ) )
          | ( x('System_IConvertible','System_Object') != true_1 )
          | ( 'Factorial' != 'AsDirectSubClass'('Factorial',X0) )
          | ~ ! [X372: $int,X371: $int] : ( 'ElementType'('NonNullRefArray'(X372,X371)) = X372 )
          | ( x('System_String','System_ICloneable') != true_1 )
          | ~ ! [X374: $int,X373: $int,X375: $int] :
                ( ( true_1 = 'IsAllocated'(X374,X375) )
               => ( true_1 = 'IsAllocated'(X374,'RefArrayGet'(X375,X373)) ) )
          | ~ ! [X378: $int,X377: $int,X376: $int] :
              ? [X379: $int] :
                ( ( 'IntArray'(X378,X377) = X379 )
                & ( ( true_1 = x(X379,X376) )
                 => ( ( true_1 = x('System_Array',X376) )
                    | ( X376 = X379 ) ) ) )
          | ( 'AsInterface'('System_ICloneable') != 'System_ICloneable' ) )
      & ( 'BaseClass'('System_String') = X1 )
      & ( 'BaseClass'('Factorial') = X0 ) ),
    inference(true_and_false_elimination,[],[f24]) ).

tff(f26,plain,
    ? [X1: $int,X0: $int] :
      ( ( 'BaseClass'('Factorial') = X0 )
      & ( 'BaseClass'('System_String') = X1 )
      & ~ ( ~ ! [X152: $int,X153: $int] :
              ? [X154: $int] :
                ( ( ~ ( $less(X153,0)
                      | ~ $less(X152,0) )
                 => ~ ( ~ $less(X154,$sum(0,$uminus(X152)))
                      | $less(X154,0) ) )
                & ( x_2(X153,X152) = X154 ) )
          | ~ ! [X243: $int,X241: $int,X242: $int,X240: $int] :
                ( ( true_1 = 'IsHeap'(X240) )
               => ( true_1 = 'Is'(select2(X240,X241,'AsRefField'(X243,X242)),X242) ) )
          | ( 'Factorial' != 'AsDirectSubClass'('Factorial',X0) )
          | ~ ! [X90: $int,X91: $int] : ( 'Factorial_recursiveFac_System_Int32'(X90,X91) = 'Factorial_recursiveFac_System_Int32_1'(X91) )
          | ( 'IsValueType'('System_Int32') != true_1 )
          | ~ ! [X177: $int,X178: $int] :
                ( ~ ( $less(X178,0)
                    | $less(X177,0) )
               => ( x_2(X177,X178) = x_2($sum(X178,X177),X178) ) )
          | ( 'AsInterface'('System_IConvertible') != 'System_IConvertible' )
          | ~ ! [X361: $int,X363: $int,X364: $int,X362: $int] :
                ( ( X362 != X364 )
               => ( 'RefArrayGet'('RefArraySet'(X363,X362,X361),X364) = 'RefArrayGet'(X363,X364) ) )
          | ~ ! [X318: $int,X319: $int,X317: $int] :
              ? [X320: $int] :
                ( ( select2(X317,X319,'AsPeerField'(X318)) = X320 )
                & ( ~ ( ( nullObject = X320 )
                      | ( true_1 != 'IsHeap'(X317) ) )
                 => ~ ( ( select2(X317,X320,ownerRef) != select2(X317,X319,ownerRef) )
                      | ( select2(X317,X320,ownerFrame) != select2(X317,X319,ownerFrame) ) ) ) )
          | ~ ! [X108: $int,X111: $int,X109: $int,X110: $int] :
                ( ~ ( ( true_1 != 'IsHeap'(X111) )
                    | ( nullObject = X109 )
                    | ~ ( ( true_1 = select2(X111,'BeingConstructed','NonNullFieldsAreInitialized') )
                        | ( 'BeingConstructed' != X109 ) ) )
               => ( nullObject != select2(X111,X109,'AsNonNullRefField'(X108,X110)) ) )
          | ( 'AsImmutable'('System_String') != 'System_String' )
          | ~ ! [X136: $int,X135: $int,X134: $int] :
                ( ( true_1 = x(X135,'AsDirectSubClass'(X136,X134)) )
               => ( 'OneClassDown'(X135,X134) = X136 ) )
          | ( x('System_IComparable_1___System_String','System_Object') != true_1 )
          | ( x('System_IConvertible','System_Object') != true_1 )
          | ( 'AsInterface'('System_IComparable') != 'System_IComparable' )
          | ( x('System_Collections_IEnumerable','System_Collections_IEnumerable') != true_1 )
          | ~ ! [X176: $int] :
                ( ( true_1 = 'InRange'(X176,'System_Byte') )
              <=> ~ ( $less(X176,0)
                    | ~ $less(X176,256) ) )
          | ( 'IsStaticField'(inv) = true_1 )
          | ~ ! [X22: $int] :
                ( ( true_1 = 'InRange'(X22,'System_Char') )
              <=> ~ ( ~ $less(X22,65536)
                    | $less(X22,0) ) )
          | ~ ! [X127: $int,X128: $int] :
              ? [X129: $int] :
                ( ( x_2(X127,X128) = X129 )
                & ( ~ ( ~ $less(0,X128)
                      | $less(X127,0) )
                 => ~ ( $less(X129,0)
                      | ~ $less(X129,X128) ) ) )
          | ~ ! [X252: $int,X253: $int,X254: $int] : ( 'RefArrayGet'('RefArraySet'(X252,X253,X254),X253) = X254 )
          | ( 'IsStaticField'(allocated) = true_1 )
          | ~ ! [X61: $int,X62: $int,X63: $int] :
                ( ( true_1 = X63 )
               => ( 'IfThenElse'(X63,X62,X61) = X62 ) )
          | ~ ! [X251: $int,X250: $int,X249: $int] : ( 'IntArrayGet'('IntArraySet'(X250,X251,X249),X251) = X249 )
          | ( 'System_Object' != X1 )
          | ( 'AsInterface'('System_ICloneable') != 'System_ICloneable' )
          | ( 'IncludedInModifiesStar'(exposeVersion) != true_1 )
          | ( 'AsInterface'('System_Collections_IEnumerable') != 'System_Collections_IEnumerable' )
          | ( 'IsValueType'('System_SByte') != true_1 )
          | ( 'IncludeInMainFrameCondition'(localinv) = true_1 )
          | ( 'IsMemberlessType'('System_Collections_IEnumerable') != true_1 )
          | ~ ! [X369: $int,X367: $int,X368: $int] :
              ? [X370: $int] :
                ( ( ~ ( ( true_1 != 'IsHeap'(X367) )
                      | ( nullObject = X370 ) )
                 => ( true_1 = x(typeof(X370),'ElementType'(typeof(X368))) ) )
                & ( 'RefArrayGet'(select2(X367,X368,elements),X369) = X370 ) )
          | ~ ! [X378: $int,X377: $int,X376: $int] :
              ? [X379: $int] :
                ( ( 'IntArray'(X378,X377) = X379 )
                & ( ( true_1 = x(X379,X376) )
                 => ( ( true_1 = x('System_Array',X376) )
                    | ( X376 = X379 ) ) ) )
          | ~ ! [X80: $int,X79: $int] :
              ? [X81: $int] :
                ( ( or_1(X80,X79) = X81 )
                & ( ~ ( $less(X80,0)
                      | $less(X79,0) )
                 => ~ ( $less($sum(X80,X79),X81)
                      | $less(X81,0) ) ) )
          | ~ ! [X184: $int,X185: $int,X183: $int] :
                ( ( true_1 = 'IsAllocated'(X183,X184) )
               => ( true_1 = 'IsAllocated'(X183,'StructGet'(X184,X185)) ) )
          | ~ $less(int_m2147483648,$sum(0,$uminus(100000)))
          | ( x('System_IEquatable_1___System_String','System_Object') != true_1 )
          | ( 'IsValueType'('System_Int16') != true_1 )
          | ~ ! [X119: $int,X120: $int,X121: $int] :
                ( ~ ( ( true_1 != select2(X120,X119,allocated) )
                    | ( true_1 != 'IsHeap'(X120) ) )
               => ( true_1 = select2(X120,select2(X120,X119,X121),allocated) ) )
          | ( 'IsValueType'('System_UInt32') != true_1 )
          | ( x('System_String','System_ICloneable') != true_1 )
          | ( x('System_IComparable_1___System_String','System_IComparable_1___System_String') != true_1 )
          | ( x('System_Type','System_Object') != true_1 )
          | ~ ! [X365: $int,X366: $int] : ( 'ElementType'('IntArray'(X366,X365)) = X366 )
          | ~ ! [X356: $int,X358: $int,X357: $int] :
              ? [X360: $int,X359: $int] :
                ( ( 'AsInterface'(X358) = X359 )
                & ( ~ ( ( X358 != X359 )
                      | ( X356 != X360 )
                      | ( true_1 != x('UnboxedType'(X360),X359) ) )
                 => ( true_1 = x(typeof(X356),X358) ) )
                & ( 'Box'(X357,X356) = X360 ) )
          | ( 'IncludeInMainFrameCondition'('FirstConsistentOwner') = true_1 )
          | ( 'AsMutable'('Factorial') != 'Factorial' )
          | ~ ! [X6: $int,X7: $int,X5: $int] :
                ( ~ ( ( true_1 != x(typeof(X5),'IntArray'(X7,X6)) )
                    | ( nullObject = X5 ) )
               => ( 'Rank'(X5) = X6 ) )
          | ~ ! [X29: $int,X30: $int,X28: $int] :
              ? [X31: $int] :
                ( ( 'ValueArray'(X29,X30) = X31 )
                & ( ( true_1 = x(X31,X28) )
                 => ( ( true_1 = x('System_Array',X28) )
                    | ( X28 = X31 ) ) ) )
          | ( 'IsNotNull'(stringLiteral0,'System_String') != true_1 )
          | ( x('System_IComparable','System_IComparable') != true_1 )
          | ~ ! [X211: $int,X210: $int,X209: $int,X207: $int,X208: $int] :
              ? [X212: $int] :
                ( ? [X213: $int] :
                    ( ( ~ ( ( true_1 != 'IsHeap'(X208) )
                          | ( nullObject = X212 ) )
                     => ~ ( ( select2(X208,X213,ownerRef) != X211 )
                          | ( select2(X208,X213,ownerFrame) != X209 ) ) )
                    & ( 'ElementProxy'(X212,X207) = X213 ) )
                & ( select2(X208,X211,'AsElementsRepField'(X210,X209,X207)) = X212 ) )
          | ( 'IsValueType'('System_Int64') != true_1 )
          | ( 'IsMemberlessType'('System_IConvertible') != true_1 )
          | ~ $less(int_2147483647,int_4294967295)
          | ~ ! [X118: $int] :
                ( ( true_1 = 'InRange'(X118,'System_Int16') )
              <=> ~ ( ~ $less(X118,32768)
                    | $less(X118,$sum(0,$uminus(32768))) ) )
          | ( 'IsValueType'('System_IntPtr') != true_1 )
          | ( x('System_String','System_IConvertible') != true_1 )
          | ( x('System_String','System_IComparable') != true_1 )
          | ( 'IsValueType'('System_UIntPtr') != true_1 )
          | ~ ! [X188: $int,X189: $int] : ( 'ElementType'('RefArray'(X188,X189)) = X188 )
          | ( x('System_Collections_Generic_IEnumerable_1___System_Char','System_Object') != true_1 )
          | ~ ! [X204: $int,X205: $int] :
                ( ~ ( $less(X204,0)
                    | $less(X205,0) )
               => ( x_2(X204,X205) = x_2($sum(X204,X205),X205) ) )
          | ~ ! [X256: $int,X255: $int,X257: $int] :
                ( ( true_1 = x(X256,'RefArray'(X255,X257)) )
               => ( 'ArrayCategoryRef' = 'ArrayCategory'(X256) ) )
          | ( 'IsMemberlessType'('System_IEquatable_1___System_String') != true_1 )
          | ( 'IsMemberlessType'('System_IComparable_1___System_String') != true_1 )
          | ( 'AsInterface'('System_Collections_Generic_IEnumerable_1___System_Char') != 'System_Collections_Generic_IEnumerable_1___System_Char' )
          | ( 'IsValueType'('System_Byte') != true_1 )
          | ~ ! [X24: $int,X25: $int] :
                ( ( true_1 = x(X25,'AsMutable'(X24)) )
               => ~ ( ( 'IsImmutable'(X25) = true_1 )
                    | ( 'AsMutable'(X25) != X25 ) ) )
          | ( 'IsStaticField'(elements) = true_1 )
          | ~ ! [X267: $int] : ( 'ClassReprInv'('ClassRepr'(X267)) = X267 )
          | ( 'IsValueType'('System_UInt64') != true_1 )
          | ( 'IsValueType'('System_UInt16') != true_1 )
          | ~ ! [X132: $int,X131: $int] :
              ? [X133: $int] :
                ( ( $sum(X132,$uminus(X131)) = X133 )
                & ( ~ ( $less(X131,0)
                      | $less(X133,0) )
                 => ( x_2(X133,X131) = x_2(X132,X131) ) ) )
          | ~ ! [X355: $int,X353: $int,X354: $int] :
                ( ( true_1 = 'System_String_Equals_System_String_System_String'(X355,X354,X353) )
              <=> ( true_1 = 'System_String_Equals_System_String'(X355,X354,X353) ) )
          | ~ ! [X276: $int,X277: $int,X275: $int] : ( 'StructGet'('StructSet'(X276,X275,X277),X275) = X277 )
          | ~ ! [X14: $int,X13: $int,X15: $int] :
                ( ( true_1 = 'InRange'(X14,X15) )
               => ( 'IntToInt'(X14,X13,X15) = X14 ) )
          | ( 'IsMemberlessType'('System_IComparable') != true_1 )
          | ~ ! [X244: $int,X246: $int,X245: $int] :
                ( ~ ( ( true_1 != 'System_String_Equals_System_String_System_String'(X245,X246,X244) )
                    | ( nullObject = X244 )
                    | ( nullObject = X246 ) )
               => ( 'System_String_IsInterned_System_String_notnull'(X245,X244) = 'System_String_IsInterned_System_String_notnull'(X245,X246) ) )
          | ~ ! [X34: $int,X35: $int,X36: $int] :
                ( ~ ( ( nullObject = X35 )
                    | ( true_1 != x(typeof(X35),'NonNullRefArray'(X36,X34)) ) )
               => ( 'Rank'(X35) = X34 ) )
          | ~ ! [X226: $int,X227: $int] :
              ? [X228: $int] :
                ( ( select2(X226,X227,'FirstConsistentOwner') = X228 )
                & ? [X230: $int,X232: $int,X229: $int,X231: $int] :
                    ( ( select2(X226,X227,ownerFrame) = X232 )
                    & ( select2(X226,X227,ownerRef) = X231 )
                    & ( select2(X226,X228,ownerFrame) = X229 )
                    & ( select2(X226,X228,ownerRef) = X230 )
                    & ( ~ ( ( nullObject = X227 )
                          | ( select2(X226,X231,localinv) = 'BaseClass'(X232) )
                          | ( true_1 != x(select2(X226,X231,inv),X232) )
                          | ( 'PeerGroupPlaceholder' = X232 )
                          | ( true_1 != select2(X226,X227,allocated) )
                          | ( true_1 != 'IsHeap'(X226) ) )
                     => ~ ( ( nullObject = X228 )
                          | ( true_1 != select2(X226,X228,allocated) )
                          | ~ ( ( true_1 != x(select2(X226,X230,inv),X229) )
                              | ( 'PeerGroupPlaceholder' = X229 )
                              | ( 'BaseClass'(X229) = select2(X226,X230,localinv) ) ) ) ) ) )
          | ~ ! [X150: $int,X151: $int] :
                ( ( true_1 = 'Is'(X150,X151) )
               => ( 'As'(X150,X151) = X150 ) )
          | ( x('System_Collections_IEnumerable','System_Object') != true_1 )
          | ~ ( ( 'PurityAxiomsCanBeAssumed' = true_1 )
             => ! [X333: $int,X334: $int] :
                ? [X335: $int] :
                  ( ( ( true_1 = 'IsHeap'(X334) )
                   => ~ ( ~ ( ( 0 != X333 )
                           => ( $product(X333,'Factorial_recursiveFac_System_Int32'(X334,$sum(X333,$uminus(1)))) = X335 ) )
                        | ~ ( ( 0 = X333 )
                           => ( 1 = X335 ) ) ) )
                  & ( 'Factorial_recursiveFac_System_Int32'(X334,X333) = X335 ) ) )
          | ~ ! [X344: $int,X343: $int] :
              ? [X345: $int] :
                ( ~ ( ( true_1 != x(X345,X345) )
                    | ( true_1 != x(X345,'System_Array') ) )
                & ( 'NonNullRefArray'(X343,X344) = X345 ) )
          | ~ ! [X46: $int] :
                ( ~ ( $less(X46,0)
                    | $less(int_18446744073709551615,X46) )
              <=> ( true_1 = 'InRange'(X46,'System_UInt64') ) )
          | ( 'DeclType'(elements) != 'System_Object' )
          | ~ ! [X161: $int,X160: $int] :
                ( ( true_1 = 'IsHeap'(X161) )
               => ( true_1 = select2(X161,'ClassRepr'(X160),allocated) ) )
          | ~ $less(100000,int_2147483647)
          | ~ ! [X156: $int,X157: $int,X155: $int] :
                ( ~ ( ( nullObject = X155 )
                    | ( true_1 != x(typeof(X155),'ValueArray'(X156,X157)) ) )
               => ( 'Rank'(X155) = X157 ) )
          | ( x('System_IConvertible','System_IConvertible') != true_1 )
          | ~ ! [X266: $int] :
                ( ( true_1 = 'InRange'(X266,'System_UInt16') )
              <=> ~ ( ~ $less(X266,65536)
                    | $less(X266,0) ) )
          | ~ ! [X238: $int,X239: $int] :
                ( ( true_1 = x(X238,'AsImmutable'(X239)) )
               => ~ ( ( 'AsImmutable'(X238) != X238 )
                    | ( true_1 != 'IsImmutable'(X238) ) ) )
          | ~ ! [X285: $int,X283: $int,X284: $int] :
                ~ ( ~ ( ( true_1 = 'System_String_Equals_System_String_System_String'(X283,X284,X285) )
                    <=> ( true_1 = 'StringEquals'(X285,X284) ) )
                  | ~ ( ( X284 = X285 )
                     => ( true_1 = 'StringEquals'(X284,X285) ) )
                  | ~ ( ( true_1 = 'System_String_Equals_System_String_System_String'(X283,X284,X285) )
                    <=> ( true_1 = 'StringEquals'(X284,X285) ) ) )
          | ~ ! [X303: $int,X304: $int] :
                ( ( nullObject != 'BoxTester'(X303,X304) )
              <=> ( 'UnboxedType'(X303) = X304 ) )
          | ~ ! [X65: $int,X64: $int,X66: $int] :
                ( ( true_1 = x(X65,X64) )
               => ( true_1 = x('NonNullRefArray'(X65,X66),'NonNullRefArray'(X64,X66)) ) )
          | ~ ! [X295: $int,X294: $int,X293: $int] :
                ( ( true_1 = 'IsHeap'(X293) )
               => ( true_1 = 'InRange'('IntArrayGet'(select2(X293,X295,elements),X294),'ElementType'(typeof(X295))) ) )
          | ~ ! [X9: $int,X8: $int,X10: $int] :
              ? [X11: $int,X12: $int] :
                ( ( 'RefArrayGet'(select2(X8,X10,elements),X9) = X11 )
                & ( 'ElementProxy'(X10,$sum(0,$uminus(1))) = X12 )
                & ( ~ ( ( true_1 != 'IsHeap'(X8) )
                      | ( true_1 != x(typeof(X10),'System_Array') ) )
                 => ( ( nullObject = X11 )
                    | ( true_1 = 'IsImmutable'(typeof(X11)) )
                    | ~ ( ( select2(X8,X12,ownerFrame) != select2(X8,X11,ownerFrame) )
                        | ( select2(X8,X11,ownerRef) != select2(X8,X12,ownerRef) ) ) ) ) )
          | ~ ! [X23: $int] : ( nullObject != 'ClassRepr'(X23) )
          | ( x('System_IComparable','System_Object') != true_1 )
          | ( 'IsStaticField'(localinv) = true_1 )
          | ~ ! [X168: $int,X169: $int,X167: $int] :
              ? [X170: $int] :
                ( ( ( true_1 = x(X167,'NonNullRefArray'(X168,X169)) )
                 => ~ ( ( 'NonNullRefArray'(X170,X169) != X167 )
                      | ( X167 = X168 )
                      | ( true_1 != x(X170,X168) ) ) )
                & ( 'ElementType'(X167) = X170 ) )
          | ( 'IsMemberlessType'('System_Collections_Generic_IEnumerable_1___System_Char') != true_1 )
          | ~ ! [X216: $int] : ~ $less('Rank'(X216),1)
          | ~ ! [X330: $int,X331: $int] :
              ? [X332: $int] :
                ( ~ ( ( true_1 != x(X332,X332) )
                    | ( true_1 != x(X332,'System_Array') ) )
                & ( 'RefArray'(X330,X331) = X332 ) )
          | ~ ! [X336: $int,X337: $int] :
                ( ( ~ $less(X336,0)
                  | ~ $less(X337,0) )
               => ~ $less(and_1(X337,X336),0) )
          | ~ ! [X42: $int] : ( shr(X42,0) = X42 )
          | ( x('System_String','System_Collections_IEnumerable') != true_1 )
          | ( 'IncludeInMainFrameCondition'(inv) = true_1 )
          | ~ $less(int_m9223372036854775808,int_m2147483648)
          | ~ ! [X321: $int,X322: $int] :
                ( ( nullObject != 'BoxTester'(X322,X321) )
               => ( 'Box'('Unbox'(X322),X322) = X322 ) )
          | ~ ! [X145: $int] :
                ( ~ ( $less(int_9223372036854775807,X145)
                    | $less(X145,int_m9223372036854775808) )
              <=> ( true_1 = 'InRange'(X145,'System_Int64') ) )
          | ~ ! [X84: $int,X83: $int,X82: $int] :
                ( ( true_1 = x(X82,'NonNullRefArray'(X83,X84)) )
               => ( 'ArrayCategoryNonNullRef' = 'ArrayCategory'(X82) ) )
          | ~ ! [X296: $int,X297: $int] :
                ( ( true_1 = 'IsAllocated'(X297,X296) )
               => ( true_1 = select2(X297,X296,allocated) ) )
          | ~ ( ( 'ArrayCategoryValue' != 'System_Int32' )
              & ( allocated != 'FirstConsistentOwner' )
              & ( 'ArrayCategoryValue' != 'System_IComparable_1___System_String' )
              & ( 'System_Int16' != 'System_UInt32' )
              & ( 'System_SByte' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( elements != 'System_Char' )
              & ( elements != 'System_IntPtr' )
              & ( 'System_Array' != 'System_Char' )
              & ( localinv != 'FirstConsistentOwner' )
              & ( 'ArrayCategoryValue' != 'System_UInt32' )
              & ( sharingMode != 'System_Collections_IEnumerable' )
              & ( 'System_Array' != 'System_Int64' )
              & ( exposeVersion != 'System_Byte' )
              & ( 'System_IConvertible' != 'System_IEquatable_1___System_String' )
              & ( 'NonNullFieldsAreInitialized' != 'System_IntPtr' )
              & ( exposeVersion != 'System_Int16' )
              & ( inv != 'System_SByte' )
              & ( ownerRef != 'Factorial' )
              & ( ownerRef != 'System_UInt16' )
              & ( allocated != stringLiteral0 )
              & ( 'System_UInt32' != 'System_IConvertible' )
              & ( 'SharingMode_LockProtected' != 'FirstConsistentOwner' )
              & ( localinv != 'ArrayCategoryRef' )
              & ( 'System_SByte' != 'System_IComparable' )
              & ( 'SharingMode_Unshared' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'ArrayCategoryValue' != 'System_Int64' )
              & ( ownerRef != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryValue' != 'System_Int16' )
              & ( 'System_Boolean' != 'System_Int32' )
              & ( 'FirstConsistentOwner' != 'System_ICloneable' )
              & ( localinv != 'ArrayCategoryInt' )
              & ( exposeVersion != 'System_Boolean' )
              & ( 'System_Object' != 'System_Byte' )
              & ( 'System_Type' != 'System_IComparable_1___System_String' )
              & ( 'System_IntPtr' != 'System_IComparable' )
              & ( 'SharingMode_Unshared' != 'System_Int16' )
              & ( 'SharingMode_Unshared' != 'System_Object' )
              & ( 'SharingMode_LockProtected' != 'System_String' )
              & ( elements != 'System_Object' )
              & ( 'System_IComparable_1___System_String' != 'Factorial' )
              & ( inv != 'Factorial' )
              & ( 'System_UInt16' != 'System_Int64' )
              & ( ownerFrame != 'System_IntPtr' )
              & ( inv != 'System_Int64' )
              & ( 'ArrayCategoryInt' != 'System_UInt16' )
              & ( sharingMode != 'System_Int64' )
              & ( 'NonNullFieldsAreInitialized' != 'System_Int32' )
              & ( allocated != 'System_Int64' )
              & ( 'System_IntPtr' != 'System_ICloneable' )
              & ( inv != 'NonNullFieldsAreInitialized' )
              & ( allocated != 'System_Array' )
              & ( 'System_Char' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( sharingMode != 'System_IComparable' )
              & ( 'System_Type' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( sharingMode != 'SharingMode_LockProtected' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Char' )
              & ( 'System_Type' != 'System_Int64' )
              & ( 'System_Boolean' != 'System_Type' )
              & ( 'ArrayCategoryInt' != stringLiteral0 )
              & ( 'ArrayCategoryNonNullRef' != 'System_UInt16' )
              & ( 'System_UInt16' != 'System_IEquatable_1___System_String' )
              & ( 'FirstConsistentOwner' != stringLiteral0 )
              & ( 'SharingMode_Unshared' != 'System_SByte' )
              & ( elements != 'System_UInt32' )
              & ( ownerFrame != stringLiteral0 )
              & ( 'PeerGroupPlaceholder' != 'System_Array' )
              & ( localinv != 'PeerGroupPlaceholder' )
              & ( 'System_Object' != 'System_IComparable' )
              & ( 'ArrayCategoryRef' != 'System_Byte' )
              & ( 'SharingMode_Unshared' != 'System_String' )
              & ( exposeVersion != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Boolean' != 'System_IEquatable_1___System_String' )
              & ( 'System_Int16' != 'System_IComparable' )
              & ( 'System_Int16' != 'System_IntPtr' )
              & ( elements != 'System_Int32' )
              & ( 'System_String' != 'System_UInt16' )
              & ( allocated != 'System_Object' )
              & ( 'System_Boolean' != stringLiteral0 )
              & ( 'ArrayCategoryNonNullRef' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_SByte' != 'System_Collections_IEnumerable' )
              & ( 'SharingMode_LockProtected' != 'System_Object' )
              & ( localinv != 'System_UInt32' )
              & ( 'ArrayCategoryRef' != 'System_UIntPtr' )
              & ( 'SharingMode_Unshared' != 'System_Byte' )
              & ( 'NonNullFieldsAreInitialized' != 'System_IComparable' )
              & ( 'NonNullFieldsAreInitialized' != 'System_UInt64' )
              & ( 'System_Int32' != 'System_IComparable' )
              & ( 'System_Boolean' != 'System_Byte' )
              & ( sharingMode != 'System_IConvertible' )
              & ( 'SharingMode_Unshared' != ownerFrame )
              & ( exposeVersion != 'System_ICloneable' )
              & ( 'ArrayCategoryRef' != 'System_Char' )
              & ( 'System_IComparable' != 'Factorial' )
              & ( allocated != ownerFrame )
              & ( ownerFrame != 'System_Type' )
              & ( 'System_Type' != 'System_Char' )
              & ( 'System_Boolean' != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryInt' != 'System_SByte' )
              & ( 'NonNullFieldsAreInitialized' != 'System_IConvertible' )
              & ( 'ArrayCategoryInt' != 'System_Byte' )
              & ( 'ArrayCategoryValue' != 'System_UInt16' )
              & ( elements != 'ArrayCategoryInt' )
              & ( 'NonNullFieldsAreInitialized' != 'System_Char' )
              & ( 'System_Byte' != 'System_ICloneable' )
              & ( localinv != 'ArrayCategoryNonNullRef' )
              & ( 'ArrayCategoryRef' != 'NonNullFieldsAreInitialized' )
              & ( 'System_UInt16' != stringLiteral0 )
              & ( ownerRef != 'System_Char' )
              & ( 'System_SByte' != 'System_Int64' )
              & ( allocated != 'System_SByte' )
              & ( 'System_Byte' != 'System_IComparable' )
              & ( elements != 'NonNullFieldsAreInitialized' )
              & ( ownerRef != 'System_SByte' )
              & ( 'SharingMode_LockProtected' != 'System_ICloneable' )
              & ( sharingMode != 'System_UInt64' )
              & ( 'System_Boolean' != 'System_IConvertible' )
              & ( 'System_Boolean' != 'System_UInt64' )
              & ( 'System_Array' != 'System_Int32' )
              & ( allocated != 'SharingMode_LockProtected' )
              & ( 'PeerGroupPlaceholder' != 'System_Int16' )
              & ( 'System_Int64' != 'Factorial' )
              & ( 'ArrayCategoryRef' != 'System_Int16' )
              & ( exposeVersion != 'System_SByte' )
              & ( 'System_String' != 'System_IComparable' )
              & ( 'NonNullFieldsAreInitialized' != 'FirstConsistentOwner' )
              & ( ownerFrame != 'ArrayCategoryRef' )
              & ( inv != 'PeerGroupPlaceholder' )
              & ( sharingMode != 'System_SByte' )
              & ( sharingMode != 'System_Char' )
              & ( 'ArrayCategoryValue' != 'System_IEquatable_1___System_String' )
              & ( sharingMode != 'ArrayCategoryInt' )
              & ( 'System_Int32' != 'System_IComparable_1___System_String' )
              & ( 'System_Type' != stringLiteral0 )
              & ( 'PeerGroupPlaceholder' != 'System_UInt64' )
              & ( 'ArrayCategoryValue' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Boolean' != 'System_Int16' )
              & ( localinv != 'Factorial' )
              & ( 'System_Collections_IEnumerable' != stringLiteral0 )
              & ( 'ArrayCategoryInt' != 'ArrayCategoryNonNullRef' )
              & ( elements != exposeVersion )
              & ( 'ArrayCategoryValue' != 'Factorial' )
              & ( inv != 'System_UInt16' )
              & ( 'System_Int32' != 'System_Int64' )
              & ( 'System_Int64' != stringLiteral0 )
              & ( 'SharingMode_LockProtected' != 'System_Collections_IEnumerable' )
              & ( 'System_Int16' != 'System_Int64' )
              & ( elements != 'SharingMode_Unshared' )
              & ( 'PeerGroupPlaceholder' != 'System_Int32' )
              & ( inv != 'System_Type' )
              & ( ownerRef != 'System_UInt64' )
              & ( 'ArrayCategoryInt' != 'NonNullFieldsAreInitialized' )
              & ( exposeVersion != 'ArrayCategoryNonNullRef' )
              & ( localinv != ownerFrame )
              & ( 'SharingMode_Unshared' != 'System_IConvertible' )
              & ( sharingMode != 'System_Array' )
              & ( 'System_Int16' != 'System_Collections_IEnumerable' )
              & ( 'SharingMode_LockProtected' != 'System_IComparable_1___System_String' )
              & ( 'PeerGroupPlaceholder' != 'System_Collections_IEnumerable' )
              & ( localinv != 'SharingMode_Unshared' )
              & ( 'System_Object' != 'System_IConvertible' )
              & ( localinv != 'System_String' )
              & ( ownerRef != 'System_UInt32' )
              & ( exposeVersion != stringLiteral0 )
              & ( 'System_Int16' != 'Factorial' )
              & ( 'System_Byte' != 'System_UIntPtr' )
              & ( 'NonNullFieldsAreInitialized' != 'System_SByte' )
              & ( 'System_Char' != 'Factorial' )
              & ( allocated != 'PeerGroupPlaceholder' )
              & ( 'ArrayCategoryRef' != 'System_IComparable_1___System_String' )
              & ( 'System_IComparable_1___System_String' != 'System_IComparable' )
              & ( inv != 'System_UInt64' )
              & ( 'SharingMode_LockProtected' != 'System_IEquatable_1___System_String' )
              & ( 'ArrayCategoryValue' != 'System_Collections_IEnumerable' )
              & ( 'System_UInt32' != 'System_IntPtr' )
              & ( elements != 'System_IComparable_1___System_String' )
              & ( allocated != 'System_UInt64' )
              & ( 'System_Char' != 'System_IComparable_1___System_String' )
              & ( inv != 'System_Array' )
              & ( 'System_Array' != 'System_Int16' )
              & ( sharingMode != 'System_Int32' )
              & ( 'System_UIntPtr' != 'System_IConvertible' )
              & ( 'System_Boolean' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Char' != stringLiteral0 )
              & ( elements != 'System_IEquatable_1___System_String' )
              & ( 'System_Byte' != 'System_UInt32' )
              & ( localinv != 'System_Array' )
              & ( localinv != sharingMode )
              & ( 'FirstConsistentOwner' != 'System_IntPtr' )
              & ( 'SharingMode_Unshared' != 'System_UInt32' )
              & ( 'System_Int64' != 'System_UIntPtr' )
              & ( inv != 'ArrayCategoryInt' )
              & ( exposeVersion != 'System_Array' )
              & ( 'ArrayCategoryNonNullRef' != 'System_IComparable' )
              & ( 'System_Int64' != 'System_IntPtr' )
              & ( allocated != 'System_ICloneable' )
              & ( ownerRef != 'ArrayCategoryRef' )
              & ( 'System_Int16' != 'System_IEquatable_1___System_String' )
              & ( localinv != 'System_UIntPtr' )
              & ( 'ArrayCategoryValue' != 'FirstConsistentOwner' )
              & ( 'ArrayCategoryValue' != 'System_SByte' )
              & ( sharingMode != 'System_IComparable_1___System_String' )
              & ( 'System_Int32' != 'System_ICloneable' )
              & ( 'SharingMode_Unshared' != 'System_IComparable_1___System_String' )
              & ( 'SharingMode_LockProtected' != 'ArrayCategoryNonNullRef' )
              & ( 'System_UInt16' != 'System_ICloneable' )
              & ( 'PeerGroupPlaceholder' != 'FirstConsistentOwner' )
              & ( 'System_IComparable_1___System_String' != 'System_Collections_IEnumerable' )
              & ( 'System_Char' != 'System_IConvertible' )
              & ( ownerFrame != 'Factorial' )
              & ( exposeVersion != 'SharingMode_LockProtected' )
              & ( 'SharingMode_Unshared' != 'System_Collections_IEnumerable' )
              & ( 'SharingMode_LockProtected' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_UIntPtr' != stringLiteral0 )
              & ( 'FirstConsistentOwner' != 'System_Collections_IEnumerable' )
              & ( sharingMode != ownerRef )
              & ( 'PeerGroupPlaceholder' != 'NonNullFieldsAreInitialized' )
              & ( 'System_UInt16' != 'System_UIntPtr' )
              & ( localinv != 'System_UInt16' )
              & ( 'SharingMode_Unshared' != 'ArrayCategoryNonNullRef' )
              & ( 'System_IConvertible' != 'System_IComparable' )
              & ( exposeVersion != 'FirstConsistentOwner' )
              & ( 'ArrayCategoryRef' != 'FirstConsistentOwner' )
              & ( 'System_UIntPtr' != 'System_IntPtr' )
              & ( ownerFrame != 'System_String' )
              & ( 'System_UIntPtr' != 'System_IComparable_1___System_String' )
              & ( 'ArrayCategoryValue' != 'System_Char' )
              & ( localinv != 'System_IComparable' )
              & ( allocated != 'System_UIntPtr' )
              & ( 'System_Int32' != 'System_Collections_IEnumerable' )
              & ( 'System_SByte' != 'System_UIntPtr' )
              & ( ownerFrame != 'System_Char' )
              & ( allocated != 'ArrayCategoryRef' )
              & ( ownerFrame != 'System_UIntPtr' )
              & ( 'System_Int64' != 'System_IComparable' )
              & ( allocated != 'System_IComparable_1___System_String' )
              & ( 'Factorial' != 'System_Collections_IEnumerable' )
              & ( allocated != 'System_Type' )
              & ( 'System_ICloneable' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Object' != 'System_UInt64' )
              & ( localinv != 'ArrayCategoryValue' )
              & ( 'System_UInt32' != 'System_Char' )
              & ( 'System_Boolean' != 'System_UInt32' )
              & ( ownerFrame != 'System_ICloneable' )
              & ( 'System_UInt64' != 'System_IEquatable_1___System_String' )
              & ( sharingMode != 'FirstConsistentOwner' )
              & ( ownerFrame != 'System_Int64' )
              & ( allocated != 'System_UInt16' )
              & ( 'System_Int16' != 'System_UInt16' )
              & ( allocated != 'System_IEquatable_1___System_String' )
              & ( 'System_Object' != 'System_IEquatable_1___System_String' )
              & ( 'ArrayCategoryInt' != 'System_UInt64' )
              & ( ownerRef != 'System_IConvertible' )
              & ( allocated != 'System_IConvertible' )
              & ( inv != 'SharingMode_LockProtected' )
              & ( 'FirstConsistentOwner' != 'System_UIntPtr' )
              & ( 'System_UInt16' != 'System_Collections_IEnumerable' )
              & ( 'System_Int32' != 'System_UInt32' )
              & ( 'System_UInt16' != 'System_IComparable_1___System_String' )
              & ( 'PeerGroupPlaceholder' != 'Factorial' )
              & ( elements != 'System_IConvertible' )
              & ( allocated != 'SharingMode_Unshared' )
              & ( 'System_Type' != 'System_String' )
              & ( inv != 'ArrayCategoryRef' )
              & ( 'ArrayCategoryNonNullRef' != 'System_IEquatable_1___System_String' )
              & ( elements != 'FirstConsistentOwner' )
              & ( 'System_UInt16' != 'System_Char' )
              & ( 'SharingMode_LockProtected' != 'System_Byte' )
              & ( 'System_Object' != 'System_String' )
              & ( elements != 'System_Byte' )
              & ( exposeVersion != 'System_IComparable_1___System_String' )
              & ( 'System_String' != 'System_IEquatable_1___System_String' )
              & ( 'System_Boolean' != 'System_IComparable_1___System_String' )
              & ( 'System_Array' != 'System_UInt32' )
              & ( 'System_Object' != 'System_UInt16' )
              & ( ownerRef != 'System_Int16' )
              & ( 'System_String' != 'FirstConsistentOwner' )
              & ( 'System_Array' != 'System_IComparable_1___System_String' )
              & ( 'ArrayCategoryValue' != stringLiteral0 )
              & ( 'ArrayCategoryValue' != 'NonNullFieldsAreInitialized' )
              & ( exposeVersion != 'System_UIntPtr' )
              & ( 'System_Int32' != 'System_Char' )
              & ( localinv != 'NonNullFieldsAreInitialized' )
              & ( 'NonNullFieldsAreInitialized' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_IComparable' != stringLiteral0 )
              & ( inv != 'ArrayCategoryValue' )
              & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_Collections_IEnumerable' )
              & ( 'System_Object' != 'FirstConsistentOwner' )
              & ( 'ArrayCategoryRef' != 'System_Type' )
              & ( 'System_Int32' != 'System_UInt64' )
              & ( ownerFrame != 'System_Int16' )
              & ( 'System_Type' != 'System_UInt32' )
              & ( 'System_Byte' != 'System_IComparable_1___System_String' )
              & ( 'System_String' != 'System_Int64' )
              & ( 'System_String' != 'System_IntPtr' )
              & ( 'System_Type' != 'System_UInt64' )
              & ( exposeVersion != 'SharingMode_Unshared' )
              & ( 'ArrayCategoryInt' != 'System_UIntPtr' )
              & ( ownerRef != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'ArrayCategoryInt' != 'System_Int16' )
              & ( elements != localinv )
              & ( 'ArrayCategoryNonNullRef' != 'System_ICloneable' )
              & ( 'System_UInt64' != 'System_IComparable_1___System_String' )
              & ( 'PeerGroupPlaceholder' != 'System_String' )
              & ( 'ArrayCategoryInt' != 'System_IConvertible' )
              & ( 'System_String' != 'System_UInt32' )
              & ( 'SharingMode_Unshared' != 'System_UIntPtr' )
              & ( 'System_Type' != 'System_Byte' )
              & ( 'System_Array' != 'System_UIntPtr' )
              & ( 'SharingMode_Unshared' != 'System_Boolean' )
              & ( elements != ownerFrame )
              & ( inv != 'System_Object' )
              & ( inv != 'SharingMode_Unshared' )
              & ( 'ArrayCategoryRef' != 'System_UInt32' )
              & ( 'System_SByte' != 'System_IComparable_1___System_String' )
              & ( 'System_UIntPtr' != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_Unshared' != 'NonNullFieldsAreInitialized' )
              & ( 'SharingMode_LockProtected' != 'System_Boolean' )
              & ( allocated != exposeVersion )
              & ( localinv != 'System_IConvertible' )
              & ( 'PeerGroupPlaceholder' != 'System_IComparable_1___System_String' )
              & ( 'System_Array' != 'System_SByte' )
              & ( allocated != 'System_Boolean' )
              & ( 'System_Byte' != stringLiteral0 )
              & ( 'ArrayCategoryInt' != 'System_IComparable' )
              & ( 'ArrayCategoryNonNullRef' != 'FirstConsistentOwner' )
              & ( 'System_Byte' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_String' != 'System_IComparable_1___System_String' )
              & ( allocated != 'NonNullFieldsAreInitialized' )
              & ( 'System_Int64' != 'System_ICloneable' )
              & ( 'System_Array' != 'System_Type' )
              & ( ownerRef != 'System_Int64' )
              & ( 'System_Array' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( exposeVersion != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_Unshared' != 'System_Int64' )
              & ( localinv != ownerRef )
              & ( 'PeerGroupPlaceholder' != 'System_Byte' )
              & ( sharingMode != 'System_UInt16' )
              & ( elements != ownerRef )
              & ( 'SharingMode_LockProtected' != 'System_Int16' )
              & ( 'System_IEquatable_1___System_String' != 'System_Collections_IEnumerable' )
              & ( 'FirstConsistentOwner' != 'System_IComparable' )
              & ( exposeVersion != 'ArrayCategoryValue' )
              & ( 'System_IEquatable_1___System_String' != 'Factorial' )
              & ( ownerFrame != 'System_Int32' )
              & ( 'System_Array' != 'Factorial' )
              & ( localinv != 'System_SByte' )
              & ( inv != stringLiteral0 )
              & ( 'FirstConsistentOwner' != 'System_SByte' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Object' )
              & ( exposeVersion != 'System_Char' )
              & ( 'System_UInt16' != 'System_IntPtr' )
              & ( 'System_Object' != 'NonNullFieldsAreInitialized' )
              & ( 'PeerGroupPlaceholder' != 'System_UInt32' )
              & ( 'System_SByte' != stringLiteral0 )
              & ( 'FirstConsistentOwner' != 'Factorial' )
              & ( 'System_Array' != 'System_UInt16' )
              & ( 'SharingMode_LockProtected' != 'System_UInt64' )
              & ( 'System_Type' != 'System_ICloneable' )
              & ( 'System_SByte' != 'System_Int32' )
              & ( 'ArrayCategoryValue' != 'ArrayCategoryNonNullRef' )
              & ( 'System_SByte' != 'System_UInt64' )
              & ( 'ArrayCategoryValue' != 'ArrayCategoryRef' )
              & ( 'System_Char' != 'System_UIntPtr' )
              & ( 'ArrayCategoryInt' != 'System_ICloneable' )
              & ( allocated != 'ArrayCategoryValue' )
              & ( 'System_UIntPtr' != 'Factorial' )
              & ( inv != 'System_ICloneable' )
              & ( 'System_SByte' != 'System_IConvertible' )
              & ( exposeVersion != 'System_Object' )
              & ( ownerFrame != 'System_IComparable_1___System_String' )
              & ( 'ArrayCategoryInt' != 'System_Collections_IEnumerable' )
              & ( 'System_IEquatable_1___System_String' != 'System_IComparable_1___System_String' )
              & ( 'ArrayCategoryNonNullRef' != 'System_UIntPtr' )
              & ( 'ArrayCategoryRef' != 'System_SByte' )
              & ( localinv != 'System_Object' )
              & ( 'System_Array' != 'System_Byte' )
              & ( 'System_SByte' != 'System_Byte' )
              & ( 'System_Object' != 'System_UInt32' )
              & ( 'FirstConsistentOwner' != 'System_UInt64' )
              & ( 'ArrayCategoryInt' != 'System_UInt32' )
              & ( ownerRef != 'System_UIntPtr' )
              & ( sharingMode != 'PeerGroupPlaceholder' )
              & ( ownerRef != 'System_IntPtr' )
              & ( allocated != 'System_Byte' )
              & ( 'PeerGroupPlaceholder' != 'System_UIntPtr' )
              & ( 'SharingMode_LockProtected' != stringLiteral0 )
              & ( elements != 'System_UInt64' )
              & ( 'System_Char' != 'System_Collections_IEnumerable' )
              & ( 'System_Int32' != 'System_UIntPtr' )
              & ( 'PeerGroupPlaceholder' != 'System_Boolean' )
              & ( 'System_Type' != 'FirstConsistentOwner' )
              & ( allocated != 'ArrayCategoryNonNullRef' )
              & ( 'System_UInt32' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( exposeVersion != 'Factorial' )
              & ( 'SharingMode_LockProtected' != 'NonNullFieldsAreInitialized' )
              & ( 'System_Type' != 'System_Collections_IEnumerable' )
              & ( elements != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Object' != 'System_IComparable_1___System_String' )
              & ( 'System_Int32' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( sharingMode != 'System_IEquatable_1___System_String' )
              & ( ownerFrame != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_LockProtected' != 'System_UInt16' )
              & ( 'System_IComparable_1___System_String' != stringLiteral0 )
              & ( 'FirstConsistentOwner' != 'System_UInt16' )
              & ( 'ArrayCategoryValue' != 'System_String' )
              & ( 'System_IEquatable_1___System_String' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( ownerFrame != 'System_Byte' )
              & ( 'System_Object' != 'System_SByte' )
              & ( 'ArrayCategoryValue' != 'System_IntPtr' )
              & ( elements != 'System_SByte' )
              & ( 'System_Char' != 'System_IComparable' )
              & ( 'NonNullFieldsAreInitialized' != 'System_String' )
              & ( 'System_UInt16' != 'Factorial' )
              & ( 'ArrayCategoryRef' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( exposeVersion != 'System_Int32' )
              & ( 'ArrayCategoryValue' != 'System_UInt64' )
              & ( exposeVersion != 'System_Collections_IEnumerable' )
              & ( 'SharingMode_LockProtected' != 'ArrayCategoryValue' )
              & ( 'System_UIntPtr' != 'System_Collections_IEnumerable' )
              & ( 'System_Byte' != 'System_IEquatable_1___System_String' )
              & ( 'System_IEquatable_1___System_String' != stringLiteral0 )
              & ( elements != 'System_Int16' )
              & ( 'System_Boolean' != 'Factorial' )
              & ( inv != 'ArrayCategoryNonNullRef' )
              & ( localinv != 'System_Boolean' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Type' )
              & ( 'FirstConsistentOwner' != 'System_Int32' )
              & ( sharingMode != 'System_String' )
              & ( 'ArrayCategoryValue' != 'ArrayCategoryInt' )
              & ( 'PeerGroupPlaceholder' != 'System_Object' )
              & ( 'System_String' != 'System_UIntPtr' )
              & ( 'ArrayCategoryInt' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( allocated != 'Factorial' )
              & ( 'ArrayCategoryRef' != 'System_UInt64' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Int32' )
              & ( 'System_Array' != 'System_IConvertible' )
              & ( inv != ownerFrame )
              & ( allocated != 'System_Int32' )
              & ( 'ArrayCategoryInt' != 'Factorial' )
              & ( 'SharingMode_Unshared' != 'System_IntPtr' )
              & ( inv != 'System_IComparable_1___System_String' )
              & ( ownerRef != 'ArrayCategoryNonNullRef' )
              & ( 'ArrayCategoryInt' != 'ArrayCategoryRef' )
              & ( allocated != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Int16' != 'System_Char' )
              & ( ownerFrame != 'System_Object' )
              & ( 'System_Object' != 'System_UIntPtr' )
              & ( 'System_Byte' != 'System_Collections_IEnumerable' )
              & ( 'System_Boolean' != 'System_SByte' )
              & ( sharingMode != 'SharingMode_Unshared' )
              & ( 'System_IntPtr' != 'Factorial' )
              & ( ownerFrame != 'FirstConsistentOwner' )
              & ( 'System_IConvertible' != 'System_Collections_IEnumerable' )
              & ( 'SharingMode_Unshared' != 'System_ICloneable' )
              & ( ownerRef != stringLiteral0 )
              & ( 'ArrayCategoryRef' != 'System_UInt16' )
              & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'Factorial' )
              & ( 'System_Type' != 'System_Int16' )
              & ( inv != 'System_UInt32' )
              & ( ownerFrame != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_UInt32' != 'System_IComparable_1___System_String' )
              & ( 'FirstConsistentOwner' != 'System_Int64' )
              & ( 'ArrayCategoryRef' != 'Factorial' )
              & ( 'System_Int64' != 'System_IComparable_1___System_String' )
              & ( 'System_Array' != 'System_IEquatable_1___System_String' )
              & ( inv != exposeVersion )
              & ( sharingMode != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( allocated != 'System_String' )
              & ( allocated != 'System_Collections_IEnumerable' )
              & ( inv != 'System_Collections_IEnumerable' )
              & ( 'System_String' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'FirstConsistentOwner' != 'System_Int16' )
              & ( 'NonNullFieldsAreInitialized' != 'System_UInt16' )
              & ( 'System_Type' != 'Factorial' )
              & ( 'ArrayCategoryInt' != 'System_String' )
              & ( inv != 'System_IConvertible' )
              & ( 'System_String' != 'System_SByte' )
              & ( 'PeerGroupPlaceholder' != 'System_IConvertible' )
              & ( sharingMode != ownerFrame )
              & ( 'SharingMode_LockProtected' != 'System_IComparable' )
              & ( elements != 'System_Int64' )
              & ( 'ArrayCategoryInt' != 'System_IComparable_1___System_String' )
              & ( exposeVersion != 'PeerGroupPlaceholder' )
              & ( 'ArrayCategoryNonNullRef' != 'System_UInt32' )
              & ( inv != 'FirstConsistentOwner' )
              & ( 'SharingMode_Unshared' != 'ArrayCategoryInt' )
              & ( 'System_UInt32' != 'System_UInt64' )
              & ( 'System_Byte' != 'System_Int16' )
              & ( sharingMode != 'System_Byte' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Byte' )
              & ( ownerFrame != 'System_UInt64' )
              & ( ownerFrame != 'NonNullFieldsAreInitialized' )
              & ( 'System_Int16' != 'System_IComparable_1___System_String' )
              & ( 'SharingMode_Unshared' != 'Factorial' )
              & ( 'SharingMode_LockProtected' != 'System_Char' )
              & ( 'System_UInt32' != 'Factorial' )
              & ( sharingMode != 'ArrayCategoryNonNullRef' )
              & ( 'System_Type' != 'System_IntPtr' )
              & ( 'SharingMode_Unshared' != 'System_Char' )
              & ( 'ArrayCategoryInt' != 'System_Type' )
              & ( 'System_Int32' != 'System_IConvertible' )
              & ( 'PeerGroupPlaceholder' != 'System_Char' )
              & ( 'System_Object' != 'System_Collections_IEnumerable' )
              & ( 'System_ICloneable' != 'Factorial' )
              & ( elements != 'ArrayCategoryValue' )
              & ( 'System_SByte' != 'System_IntPtr' )
              & ( ownerFrame != 'System_SByte' )
              & ( 'System_Int64' != 'System_IConvertible' )
              & ( 'System_Byte' != 'System_Int32' )
              & ( 'SharingMode_LockProtected' != 'PeerGroupPlaceholder' )
              & ( ownerFrame != 'System_UInt32' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Int64' )
              & ( 'ArrayCategoryRef' != stringLiteral0 )
              & ( 'PeerGroupPlaceholder' != 'System_Int64' )
              & ( localinv != 'System_Char' )
              & ( 'PeerGroupPlaceholder' != 'System_IComparable' )
              & ( 'System_IEquatable_1___System_String' != 'System_IComparable' )
              & ( 'FirstConsistentOwner' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( allocated != 'System_Char' )
              & ( 'System_Array' != 'System_String' )
              & ( 'System_Int64' != 'System_UInt64' )
              & ( 'System_UInt64' != stringLiteral0 )
              & ( 'SharingMode_LockProtected' != 'System_Type' )
              & ( localinv != 'System_ICloneable' )
              & ( localinv != 'System_Int64' )
              & ( 'System_UIntPtr' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'SharingMode_LockProtected' != 'System_IntPtr' )
              & ( 'System_UInt32' != 'System_UIntPtr' )
              & ( inv != localinv )
              & ( exposeVersion != 'ArrayCategoryRef' )
              & ( exposeVersion != 'ArrayCategoryInt' )
              & ( 'ArrayCategoryRef' != 'System_Object' )
              & ( exposeVersion != 'System_Type' )
              & ( exposeVersion != 'System_UInt64' )
              & ( 'System_Array' != 'System_IntPtr' )
              & ( sharingMode != stringLiteral0 )
              & ( localinv != 'System_Int16' )
              & ( 'System_UIntPtr' != 'System_ICloneable' )
              & ( allocated != sharingMode )
              & ( 'PeerGroupPlaceholder' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( ownerRef != 'System_String' )
              & ( 'System_Boolean' != 'System_IntPtr' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Int16' )
              & ( 'ArrayCategoryInt' != 'FirstConsistentOwner' )
              & ( elements != stringLiteral0 )
              & ( 'System_Type' != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_LockProtected' != 'ArrayCategoryRef' )
              & ( ownerFrame != 'ArrayCategoryInt' )
              & ( 'System_Object' != 'System_Int16' )
              & ( elements != 'PeerGroupPlaceholder' )
              & ( exposeVersion != sharingMode )
              & ( exposeVersion != ownerFrame )
              & ( sharingMode != 'System_Boolean' )
              & ( 'System_Int64' != 'System_Char' )
              & ( 'System_ICloneable' != 'System_IComparable' )
              & ( elements != 'System_Array' )
              & ( 'System_Int16' != 'System_Int32' )
              & ( allocated != localinv )
              & ( ownerFrame != 'ArrayCategoryValue' )
              & ( allocated != ownerRef )
              & ( 'System_String' != 'System_Collections_IEnumerable' )
              & ( 'System_Type' != 'System_IComparable' )
              & ( 'System_SByte' != 'System_ICloneable' )
              & ( localinv != 'System_Byte' )
              & ( 'System_UInt64' != 'System_IntPtr' )
              & ( 'System_Array' != 'System_IComparable' )
              & ( allocated != 'System_UInt32' )
              & ( elements != 'ArrayCategoryRef' )
              & ( 'System_UInt64' != 'System_Char' )
              & ( 'System_Char' != 'System_IEquatable_1___System_String' )
              & ( 'System_Char' != 'System_IntPtr' )
              & ( 'System_Type' != 'NonNullFieldsAreInitialized' )
              & ( ownerRef != ownerFrame )
              & ( 'SharingMode_Unshared' != 'ArrayCategoryRef' )
              & ( 'FirstConsistentOwner' != 'System_IConvertible' )
              & ( 'ArrayCategoryRef' != 'System_IEquatable_1___System_String' )
              & ( 'System_Int16' != 'System_UInt64' )
              & ( sharingMode != 'System_Type' )
              & ( elements != 'ArrayCategoryNonNullRef' )
              & ( 'System_Byte' != 'System_Int64' )
              & ( 'SharingMode_Unshared' != 'SharingMode_LockProtected' )
              & ( 'ArrayCategoryValue' != 'System_Boolean' )
              & ( 'System_Byte' != 'System_Char' )
              & ( 'System_IConvertible' != 'Factorial' )
              & ( 'ArrayCategoryRef' != 'ArrayCategoryNonNullRef' )
              & ( localinv != 'System_IntPtr' )
              & ( 'System_IntPtr' != 'System_IEquatable_1___System_String' )
              & ( 'System_Int32' != 'System_IntPtr' )
              & ( 'ArrayCategoryValue' != 'System_ICloneable' )
              & ( 'System_String' != 'System_IConvertible' )
              & ( 'ArrayCategoryInt' != 'System_Array' )
              & ( 'System_String' != 'System_ICloneable' )
              & ( 'System_Array' != stringLiteral0 )
              & ( allocated != 'ArrayCategoryInt' )
              & ( exposeVersion != 'NonNullFieldsAreInitialized' )
              & ( 'System_IConvertible' != 'System_IComparable_1___System_String' )
              & ( 'NonNullFieldsAreInitialized' != 'System_Byte' )
              & ( 'SharingMode_Unshared' != 'System_Type' )
              & ( 'System_String' != 'System_UInt64' )
              & ( localinv != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Int16' != 'System_UIntPtr' )
              & ( elements != 'System_IComparable' )
              & ( localinv != 'System_IEquatable_1___System_String' )
              & ( 'ArrayCategoryRef' != 'System_ICloneable' )
              & ( 'SharingMode_LockProtected' != 'System_UInt32' )
              & ( 'ArrayCategoryNonNullRef' != 'System_UInt64' )
              & ( 'PeerGroupPlaceholder' != 'System_ICloneable' )
              & ( 'System_UInt64' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( ownerFrame != 'System_Collections_IEnumerable' )
              & ( 'System_Array' != 'System_UInt64' )
              & ( 'ArrayCategoryRef' != 'System_Collections_IEnumerable' )
              & ( 'SharingMode_Unshared' != 'System_UInt64' )
              & ( ownerRef != 'ArrayCategoryValue' )
              & ( 'System_UInt64' != 'System_IConvertible' )
              & ( sharingMode != 'System_IntPtr' )
              & ( 'ArrayCategoryRef' != 'System_Boolean' )
              & ( 'System_SByte' != 'System_IEquatable_1___System_String' )
              & ( allocated != 'System_Int16' )
              & ( localinv != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryNonNullRef' != 'Factorial' )
              & ( localinv != 'SharingMode_LockProtected' )
              & ( 'NonNullFieldsAreInitialized' != 'System_Int16' )
              & ( exposeVersion != ownerRef )
              & ( 'System_Type' != 'System_Int32' )
              & ( 'PeerGroupPlaceholder' != 'ArrayCategoryInt' )
              & ( 'System_ICloneable' != 'System_IComparable_1___System_String' )
              & ( 'System_Int16' != stringLiteral0 )
              & ( 'ArrayCategoryValue' != 'System_Byte' )
              & ( 'ArrayCategoryInt' != 'System_Object' )
              & ( inv != 'System_String' )
              & ( inv != 'System_Int16' )
              & ( ownerFrame != 'PeerGroupPlaceholder' )
              & ( elements != inv )
              & ( localinv != stringLiteral0 )
              & ( elements != 'System_UInt16' )
              & ( sharingMode != 'ArrayCategoryValue' )
              & ( 'System_Boolean' != 'FirstConsistentOwner' )
              & ( 'System_Char' != 'System_ICloneable' )
              & ( 'System_Object' != 'System_Int32' )
              & ( 'System_Array' != 'System_Object' )
              & ( ownerRef != 'System_IComparable_1___System_String' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Collections_IEnumerable' )
              & ( 'PeerGroupPlaceholder' != 'ArrayCategoryRef' )
              & ( exposeVersion != 'System_UInt32' )
              & ( 'System_Int32' != 'System_IEquatable_1___System_String' )
              & ( 'System_String' != 'System_Byte' )
              & ( 'System_IntPtr' != 'System_IComparable_1___System_String' )
              & ( 'System_String' != 'System_Int16' )
              & ( 'SharingMode_Unshared' != 'System_Int32' )
              & ( 'System_UInt32' != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_Unshared' != 'System_IEquatable_1___System_String' )
              & ( ownerFrame != 'System_Array' )
              & ( 'System_Array' != 'NonNullFieldsAreInitialized' )
              & ( 'System_Array' != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryNonNullRef' != stringLiteral0 )
              & ( 'ArrayCategoryValue' != 'System_IComparable' )
              & ( 'System_Type' != 'System_UIntPtr' )
              & ( 'System_UInt32' != 'System_Int64' )
              & ( 'System_UInt16' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'SharingMode_Unshared' != 'FirstConsistentOwner' )
              & ( 'ArrayCategoryNonNullRef' != 'System_IntPtr' )
              & ( 'SharingMode_Unshared' != ownerRef )
              & ( 'System_Byte' != 'System_UInt16' )
              & ( 'System_Boolean' != 'System_UIntPtr' )
              & ( exposeVersion != 'System_IComparable' )
              & ( 'System_Int64' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'NonNullFieldsAreInitialized' != 'Factorial' )
              & ( elements != 'System_UIntPtr' )
              & ( 'System_UInt64' != 'System_UIntPtr' )
              & ( inv != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'SharingMode_Unshared' != stringLiteral0 )
              & ( inv != 'System_Boolean' )
              & ( inv != 'System_IComparable' )
              & ( 'System_Type' != 'System_UInt16' )
              & ( exposeVersion != 'System_IConvertible' )
              & ( 'System_String' != 'Factorial' )
              & ( 'System_IntPtr' != stringLiteral0 )
              & ( 'System_ICloneable' != 'System_IConvertible' )
              & ( ownerRef != 'FirstConsistentOwner' )
              & ( exposeVersion != 'System_IntPtr' )
              & ( 'System_Byte' != 'System_IConvertible' )
              & ( allocated != inv )
              & ( sharingMode != 'System_ICloneable' )
              & ( 'System_UInt64' != 'System_ICloneable' )
              & ( ownerRef != 'NonNullFieldsAreInitialized' )
              & ( 'System_Boolean' != 'System_Object' )
              & ( 'System_Object' != 'System_Type' )
              & ( inv != 'System_UIntPtr' )
              & ( 'ArrayCategoryRef' != 'System_Int32' )
              & ( sharingMode != 'NonNullFieldsAreInitialized' )
              & ( ownerRef != 'System_ICloneable' )
              & ( 'SharingMode_LockProtected' != 'System_Int64' )
              & ( 'System_Boolean' != 'System_UInt16' )
              & ( 'ArrayCategoryNonNullRef' != 'System_IComparable_1___System_String' )
              & ( elements != 'System_String' )
              & ( 'ArrayCategoryNonNullRef' != 'System_String' )
              & ( 'System_Array' != 'System_ICloneable' )
              & ( 'System_Object' != stringLiteral0 )
              & ( 'ArrayCategoryValue' != 'System_UIntPtr' )
              & ( 'ArrayCategoryRef' != 'System_IComparable' )
              & ( 'System_Int64' != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryValue' != 'System_Object' )
              & ( 'System_Byte' != 'System_UInt64' )
              & ( 'System_UInt16' != 'System_UInt32' )
              & ( 'ArrayCategoryValue' != 'System_IConvertible' )
              & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != stringLiteral0 )
              & ( 'System_SByte' != 'System_Char' )
              & ( 'System_String' != stringLiteral0 )
              & ( 'System_UInt64' != 'Factorial' )
              & ( 'System_IConvertible' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( localinv != 'System_IComparable_1___System_String' )
              & ( 'SharingMode_Unshared' != 'System_Array' )
              & ( 'System_SByte' != 'Factorial' )
              & ( elements != sharingMode )
              & ( 'SharingMode_LockProtected' != 'ArrayCategoryInt' )
              & ( ownerFrame != 'ArrayCategoryNonNullRef' )
              & ( 'System_Array' != 'System_Boolean' )
              & ( localinv != exposeVersion )
              & ( 'System_UInt16' != 'System_IComparable' )
              & ( 'SharingMode_LockProtected' != 'System_IConvertible' )
              & ( ownerRef != 'System_Byte' )
              & ( 'NonNullFieldsAreInitialized' != 'System_UIntPtr' )
              & ( 'System_IComparable' != 'System_Collections_IEnumerable' )
              & ( 'NonNullFieldsAreInitialized' != stringLiteral0 )
              & ( 'SharingMode_LockProtected' != 'System_SByte' )
              & ( 'FirstConsistentOwner' != 'System_Char' )
              & ( 'System_String' != 'System_Int32' )
              & ( 'ArrayCategoryInt' != 'System_IntPtr' )
              & ( 'PeerGroupPlaceholder' != 'System_IEquatable_1___System_String' )
              & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_IComparable' )
              & ( ownerFrame != 'System_IConvertible' )
              & ( 'NonNullFieldsAreInitialized' != 'System_Int64' )
              & ( exposeVersion != 'System_Int64' )
              & ( ownerRef != 'System_Object' )
              & ( elements != 'Factorial' )
              & ( 'FirstConsistentOwner' != 'System_UInt32' )
              & ( 'System_UIntPtr' != 'System_IComparable' )
              & ( elements != 'System_Collections_IEnumerable' )
              & ( sharingMode != 'ArrayCategoryRef' )
              & ( ownerRef != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_LockProtected' != 'System_Int32' )
              & ( 'System_Boolean' != 'NonNullFieldsAreInitialized' )
              & ( 'System_SByte' != 'System_Int16' )
              & ( 'System_Byte' != 'Factorial' )
              & ( 'PeerGroupPlaceholder' != 'System_Type' )
              & ( 'System_Array' != 'FirstConsistentOwner' )
              & ( sharingMode != 'Factorial' )
              & ( 'ArrayCategoryValue' != 'System_Array' )
              & ( inv != 'System_Char' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Boolean' )
              & ( 'System_ICloneable' != 'System_IEquatable_1___System_String' )
              & ( allocated != 'System_IComparable' )
              & ( ownerRef != 'System_Array' )
              & ( 'FirstConsistentOwner' != 'System_IEquatable_1___System_String' )
              & ( elements != 'System_ICloneable' )
              & ( 'System_UInt16' != 'System_IConvertible' )
              & ( 'System_UInt64' != 'System_Collections_IEnumerable' )
              & ( 'System_UInt32' != 'System_Collections_IEnumerable' )
              & ( exposeVersion != 'System_UInt16' )
              & ( 'PeerGroupPlaceholder' != 'System_SByte' )
              & ( 'ArrayCategoryNonNullRef' != 'System_IConvertible' )
              & ( 'System_UInt32' != 'System_IComparable' )
              & ( 'PeerGroupPlaceholder' != 'System_UInt16' )
              & ( ownerRef != 'System_Int32' )
              & ( 'NonNullFieldsAreInitialized' != 'System_UInt32' )
              & ( ownerRef != 'PeerGroupPlaceholder' )
              & ( exposeVersion != 'System_String' )
              & ( 'System_SByte' != 'System_UInt16' )
              & ( inv != sharingMode )
              & ( 'NonNullFieldsAreInitialized' != 'System_ICloneable' )
              & ( 'NonNullFieldsAreInitialized' != 'System_IEquatable_1___System_String' )
              & ( allocated != 'System_IntPtr' )
              & ( 'System_ICloneable' != stringLiteral0 )
              & ( 'NonNullFieldsAreInitialized' != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryRef' != 'System_Array' )
              & ( 'System_Int64' != 'System_IEquatable_1___System_String' )
              & ( 'SharingMode_LockProtected' != ownerFrame )
              & ( inv != 'System_Byte' )
              & ( 'System_IntPtr' != 'System_IConvertible' )
              & ( 'ArrayCategoryInt' != 'System_Int32' )
              & ( 'System_Int16' != 'System_ICloneable' )
              & ( 'SharingMode_LockProtected' != ownerRef )
              & ( elements != 'System_Type' )
              & ( inv != 'System_IEquatable_1___System_String' )
              & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_IComparable_1___System_String' )
              & ( 'System_Object' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'SharingMode_Unshared' != 'System_IComparable' )
              & ( 'System_UInt64' != 'System_IComparable' )
              & ( 'System_String' != 'System_Char' )
              & ( 'FirstConsistentOwner' != 'System_IComparable_1___System_String' )
              & ( sharingMode != 'System_UInt32' )
              & ( 'System_UInt16' != 'System_UInt64' )
              & ( 'ArrayCategoryInt' != 'System_Boolean' )
              & ( 'System_Object' != 'System_Int64' )
              & ( 'System_Object' != 'Factorial' )
              & ( 'SharingMode_Unshared' != 'PeerGroupPlaceholder' )
              & ( sharingMode != 'System_Int16' )
              & ( 'System_UInt32' != 'System_ICloneable' )
              & ( 'System_Object' != 'System_ICloneable' )
              & ( 'System_IntPtr' != 'System_Collections_IEnumerable' )
              & ( 'ArrayCategoryNonNullRef' != 'System_SByte' )
              & ( elements != 'SharingMode_LockProtected' )
              & ( inv != ownerRef )
              & ( 'ArrayCategoryInt' != 'System_IEquatable_1___System_String' )
              & ( 'System_Object' != 'System_IntPtr' )
              & ( ownerFrame != 'System_UInt16' )
              & ( elements != 'System_Boolean' )
              & ( 'ArrayCategoryRef' != 'System_IConvertible' )
              & ( 'System_IntPtr' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Type' != 'System_SByte' )
              & ( ownerRef != 'System_Type' )
              & ( 'PeerGroupPlaceholder' != 'System_IntPtr' )
              & ( 'System_ICloneable' != 'System_Collections_IEnumerable' )
              & ( 'System_Int16' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
              & ( 'System_Int32' != stringLiteral0 )
              & ( 'System_Type' != 'System_IConvertible' )
              & ( ownerFrame != 'System_IComparable' )
              & ( 'NonNullFieldsAreInitialized' != 'System_IComparable_1___System_String' )
              & ( 'System_Boolean' != 'System_Char' )
              & ( 'System_IConvertible' != stringLiteral0 )
              & ( 'SharingMode_LockProtected' != 'System_UIntPtr' )
              & ( 'System_UInt32' != stringLiteral0 )
              & ( ownerRef != 'ArrayCategoryInt' )
              & ( 'SharingMode_LockProtected' != 'System_Array' )
              & ( 'System_Boolean' != 'System_IComparable' )
              & ( 'ArrayCategoryInt' != 'System_Int64' )
              & ( sharingMode != 'System_UIntPtr' )
              & ( localinv != 'System_UInt64' )
              & ( 'ArrayCategoryNonNullRef' != 'System_Array' )
              & ( 'System_Boolean' != 'System_ICloneable' )
              & ( localinv != 'System_Int32' )
              & ( 'PeerGroupPlaceholder' != stringLiteral0 )
              & ( 'Factorial' != stringLiteral0 )
              & ( ownerRef != 'System_Boolean' )
              & ( allocated != elements )
              & ( 'System_UInt16' != 'System_Int32' )
              & ( 'ArrayCategoryRef' != 'System_Int64' )
              & ( ownerFrame != 'System_Boolean' )
              & ( 'PeerGroupPlaceholder' != 'ArrayCategoryValue' )
              & ( 'System_Int16' != 'System_IConvertible' )
              & ( 'ArrayCategoryNonNullRef' != 'NonNullFieldsAreInitialized' )
              & ( localinv != 'System_Type' )
              & ( ownerRef != 'System_IComparable' )
              & ( 'ArrayCategoryInt' != 'System_Char' )
              & ( 'ArrayCategoryRef' != 'System_IntPtr' )
              & ( 'ArrayCategoryValue' != 'System_Type' )
              & ( 'ArrayCategoryRef' != 'System_String' )
              & ( 'System_Boolean' != 'System_String' )
              & ( 'System_Object' != 'System_Char' )
              & ( inv != 'System_Int32' )
              & ( 'System_SByte' != 'System_UInt32' )
              & ( 'SharingMode_Unshared' != 'System_UInt16' )
              & ( 'SharingMode_LockProtected' != 'Factorial' )
              & ( 'System_Byte' != 'System_IntPtr' )
              & ( 'System_Int32' != 'Factorial' )
              & ( 'PeerGroupPlaceholder' != 'ArrayCategoryNonNullRef' )
              & ( 'System_Boolean' != 'System_Int64' )
              & ( 'SharingMode_Unshared' != 'ArrayCategoryValue' )
              & ( sharingMode != 'System_Object' )
              & ( 'FirstConsistentOwner' != 'System_Byte' )
              & ( inv != 'System_IntPtr' ) )
          | ~ ! [X195: $int,X194: $int] :
              ? [X196: $int] :
                ( ~ ( ( true_1 != x(X196,X196) )
                    | ( true_1 != x(X196,'System_Array') ) )
                & ( 'ValueArray'(X195,X194) = X196 ) )
          | ~ ! [X199: $int,X197: $int,X200: $int,X198: $int] :
              ? [X201: $int] :
                ( ? [X202: $int] :
                    ( ( 'ElementProxy'(X201,X200) = X202 )
                    & ( ~ ( ( true_1 != 'IsHeap'(X197) )
                          | ( nullObject = X201 ) )
                     => ~ ( ( select2(X197,X202,ownerRef) != select2(X197,X199,ownerRef) )
                          | ( select2(X197,X202,ownerFrame) != select2(X197,X199,ownerFrame) ) ) ) )
                & ( select2(X197,X199,'AsElementsPeerField'(X198,X200)) = X201 ) )
          | ~ ! [X67: $int,X68: $int] :
                ( ( true_1 != 'Is'(X68,X67) )
               => ( nullObject = 'As'(X68,X67) ) )
          | ~ ! [X159: $int,X158: $int] :
                ( ~ $less(X158,1)
               => ( shl(X159,X158) = $product(shl(X159,$sum(X158,$uminus(1))),2) ) )
          | ( $sum(int_m9223372036854775808,1) != $sum(0,$uminus(int_9223372036854775807)) )
          | ~ ! [X203: $int] : ( shl(X203,0) = X203 )
          | ~ ! [X223: $int,X224: $int,X222: $int] :
              ? [X225: $int] :
                ( ( 'IntArray'(X223,X222) = X225 )
                & ( ( true_1 = x(X224,X225) )
                 => ( X224 = X225 ) ) )
          | ~ ! [X123: $int,X124: $int,X125: $int,X122: $int] :
              ? [X126: $int] :
                ( ~ ( ( 'UnboxedType'(X126) != X122 )
                    | ( 'Box'(X124,X126) != X126 ) )
                & ( 'BoxFunc'(X124,X122,X125,X123) = X126 ) )
          | ~ ! [X173: $int,X174: $int] :
              ? [X175: $int] :
                ( ( x_2(X173,X174) = X175 )
                & ( ~ ( ~ $less(0,X174)
                      | $less(0,X173) )
                 => ~ ( ~ $less($sum(0,$uminus(X174)),X175)
                      | $less(0,X175) ) ) )
          | ~ ! [X262: $int,X264: $int,X263: $int] :
              ? [X265: $int] :
                ( ( 'ElementType'(X262) = X265 )
                & ( ( true_1 = x('RefArray'(X263,X264),X262) )
                 => ( ~ ( ( true_1 != x(X263,X265) )
                        | ( 'RefArray'(X265,X264) != X262 ) )
                    | ( true_1 = x('System_Array',X262) ) ) ) )
          | ( x('System_IEquatable_1___System_String','System_IEquatable_1___System_String') != true_1 )
          | ~ ! [X316: $int,X315: $int] :
                ( ~ $less(X316,1)
               => ( shr(X315,X316) = x_1(shr(X315,$sum(X316,$uminus(1))),2) ) )
          | ~ ! [X95: $int] :
                ( ( true_1 = 'IsValueType'(X95) )
               => ~ ( ~ ! [X97: $int] :
                          ( ( true_1 = x(X97,X95) )
                         => ( X95 = X97 ) )
                    | ~ ! [X96: $int] :
                          ( ( true_1 = x(X95,X96) )
                         => ( X95 = X96 ) ) ) )
          | ~ ! [X347: $int] : ~ $less('StringLength'(X347),0)
          | ~ ! [X221: $int] :
                ( ( 1 = 'Rank'(X221) )
               => ( 'DimLength'(X221,0) = 'Length'(X221) ) )
          | ( x('System_Collections_Generic_IEnumerable_1___System_Char','System_Collections_Generic_IEnumerable_1___System_Char') != true_1 )
          | ~ ! [X44: $int,X43: $int] :
              ? [X45: $int] :
                ( ( typeof(X43) = X45 )
                & ( ~ ( ( true_1 != x(X45,'System_Array') )
                      | ( nullObject = X43 )
                      | ( true_1 != 'IsHeap'(X44) ) )
                 => ~ ( ( select2(X44,X43,localinv) != X45 )
                      | ( select2(X44,X43,inv) != X45 ) ) ) )
          | ( 'IncludeInMainFrameCondition'(allocated) != true_1 )
          | ( x('System_String','System_IComparable_1___System_String') != true_1 )
          | ( 'DeclType'(exposeVersion) != 'System_Object' )
          | ( 'StringLength'(stringLiteral0) != 19 )
          | ~ ! [X47: $int,X50: $int,X48: $int,X49: $int] : ( 'ArrayIndexInvY'('ArrayIndex'(X50,X49,X47,X48)) = X48 )
          | ~ ! [X218: $int,X217: $int,X219: $int] :
              ? [X220: $int] :
                ( ( 'ElementType'(X219) = X220 )
                & ( ( true_1 = x('NonNullRefArray'(X218,X217),X219) )
                 => ( ( true_1 = x('System_Array',X219) )
                    | ~ ( ( true_1 != x(X218,X220) )
                        | ( 'NonNullRefArray'(X220,X217) != X219 ) ) ) ) )
          | ~ ! [X326: $int] :
                ( ( true_1 = 'InRange'(X326,'System_UInt32') )
              <=> ~ ( $less(int_4294967295,X326)
                    | $less(X326,0) ) )
          | ( 'IncludedInModifiesStar'(ownerRef) = true_1 )
          | ( 'IsImmutable'('Factorial') = true_1 )
          | ~ ! [X148: $int,X146: $int,X147: $int,X149: $int] : ( 'ArrayIndexInvX'('ArrayIndex'(X146,X149,X148,X147)) = X148 )
          | ( x('System_ICloneable','System_Object') != true_1 )
          | ( 'AsInterface'('System_IComparable_1___System_String') != 'System_IComparable_1___System_String' )
          | ~ ! [X94: $int,X92: $int,X93: $int] :
                ( ~ ( $less(X93,2)
                    | ( x_2(X94,X93) != x_2(X92,X93) )
                    | ~ $less(X92,X94) )
               => ~ $less(X94,$sum(X92,X93)) )
          | ~ ! [X311: $int,X310: $int,X312: $int] :
              ? [X313: $int,X314: $int] :
                ( ( ~ ( ( 'PeerGroupPlaceholder' = X313 )
                      | ( 'BaseClass'(X313) = select2(X310,X314,localinv) )
                      | ( nullObject = X312 )
                      | ( true_1 != 'IsHeap'(X310) )
                      | ( 'AsPureObject'(X312) != X312 )
                      | ( true_1 != x(select2(X310,X314,inv),X313) )
                      | ( true_1 != select2(X310,X312,allocated) ) )
                 => ( select2(X310,X312,X311) = 'FieldDependsOnFCO'(X312,X311,select2(X310,select2(X310,X312,'FirstConsistentOwner'),exposeVersion)) ) )
                & ( select2(X310,X312,ownerFrame) = X313 )
                & ( select2(X310,X312,ownerRef) = X314 ) )
          | ~ ! [X192: $int] :
              ? [X193: $int] :
                ( ~ ( $less(int_2147483647,X193)
                    | $less(X193,0) )
                & ( 'Length'(X192) = X193 ) )
          | ~ ! [X85: $int] :
                ( ( true_1 = 'IsValueType'('UnboxedType'(X85)) )
               => ! [X86: $int,X87: $int] :
                  ? [X88: $int] :
                    ( ( 'Box'(X86,X85) = X88 )
                    & ? [X89: $int] :
                        ( ( ( true_1 = 'IsHeap'(X87) )
                         => ~ ( ( select2(X87,X88,localinv) != X89 )
                              | ( select2(X87,X88,inv) != X89 ) ) )
                        & ( typeof(X88) = X89 ) ) ) )
          | ~ ! [X52: $int,X51: $int] : ( 'Unbox'('Box'(X52,X51)) = X52 )
          | ~ ! [X247: $int,X248: $int] :
                ( ( 'AsNonNullRefField'(X248,X247) = X248 )
               => ( 'AsRefField'(X248,X247) = X248 ) )
          | ( 'IncludeInMainFrameCondition'(ownerRef) != true_1 )
          | ~ ! [X113: $int,X112: $int] :
              ? [X114: $int] :
                ( ( ~ ( $less(0,X112)
                      | ~ $less(X113,0) )
                 => ~ ( $less(0,X114)
                      | ~ $less(X113,X114) ) )
                & ( x_2(X112,X113) = X114 ) )
          | ~ ! [X117: $int,X115: $int,X116: $int] :
                ( ( true_1 = x(X116,'IntArray'(X115,X117)) )
               => ( 'ArrayCategoryInt' = 'ArrayCategory'(X116) ) )
          | ( 'IsValueType'('System_Char') != true_1 )
          | ~ ! [X206: $int] : ( 'TypeName'('TypeObject'(X206)) = X206 )
          | ~ $less(int_4294967295,int_9223372036854775807)
          | ( x('System_Collections_Generic_IEnumerable_1___System_Char','System_Collections_IEnumerable') != true_1 )
          | ( x('System_String','System_String') != true_1 )
          | ( 'IncludedInModifiesStar'(ownerFrame) = true_1 )
          | ~ ! [X350: $int,X351: $int,X352: $int] : ( 'ValueArrayGet'('ValueArraySet'(X352,X350,X351),X350) = X351 )
          | ~ ! [X16: $int,X17: $int] :
              ? [X18: $int] :
                ( ( 'IntArray'(X16,X17) = X18 )
                & ~ ( ( x(X18,'System_Array') != true_1 )
                    | ( x(X18,X18) != true_1 ) ) )
          | ~ ! [X71: $int,X70: $int,X69: $int] :
              ? [X72: $int] :
                ( ( ( true_1 = 'NonNullRefArrayRaw'(X69,X71,X70) )
                 => ~ ( ( true_1 != x(X71,'ElementType'(X72)) )
                      | ( 'Rank'(X69) != X70 )
                      | ( true_1 != x(X72,'System_Array') ) ) )
                & ( typeof(X69) = X72 ) )
          | ~ ! [X349: $int,X348: $int] : ( 'ElementType'('ValueArray'(X348,X349)) = X348 )
          | ~ ! [X171: $int,X172: $int] : ~ $less('DimLength'(X171,X172),0)
          | ~ ! [X346: $int] :
                ( ( true_1 = 'InRange'(X346,'System_SByte') )
              <=> ~ ( $less(X346,$sum(0,$uminus(128)))
                    | ~ $less(X346,128) ) )
          | ~ ! [X74: $int,X73: $int,X75: $int] :
              ? [X76: $int] :
                ( ( 'ElementType'(X73) = X76 )
                & ( ( true_1 = x(X73,'RefArray'(X74,X75)) )
                 => ~ ( ( true_1 != x(X76,X74) )
                      | ( X73 = X74 )
                      | ( 'RefArray'(X76,X75) != X73 ) ) ) )
          | ~ ! [X20: $int,X19: $int,X21: $int] :
                ( ~ ( ( true_1 != select2(X20,X19,allocated) )
                    | ( true_1 != 'IsHeap'(X20) ) )
               => ( true_1 = 'IsAllocated'(X20,select2(X20,X19,X21)) ) )
          | ( 'System_String' != 'AsDirectSubClass'('System_String',X1) )
          | ( 'IncludedInModifiesStar'(elements) != true_1 )
          | ~ ! [X282: $int] : ( true_1 != 'IsMemberlessType'(typeof(X282)) )
          | ~ ! [X301: $int,X302: $int] :
                ( ( true_1 = 'IsHeap'(X302) )
               => ( 'PeerGroupPlaceholder' = select2(X302,'ClassRepr'(X301),ownerFrame) ) )
          | ~ ! [X306: $int,X305: $int] :
              ? [X307: $int] :
                ( ~ ( ~ ( ( X305 = X307 )
                        | ( X306 = X307 ) )
                    | $less(X307,X306)
                    | $less(X307,X305) )
                & ( max(X306,X305) = X307 ) )
          | ( 'IsMemberlessType'('System_ICloneable') != true_1 )
          | ~ ! [X32: $int,X33: $int] :
                ( ( true_1 = 'IsNotNull'(X32,X33) )
              <=> ~ ( ( true_1 != 'Is'(X32,X33) )
                    | ( nullObject = X32 ) ) )
          | ( 'IsImmutable'('System_Object') = true_1 )
          | ( x('Factorial','Factorial') != true_1 )
          | ( 'IncludeInMainFrameCondition'(elements) != true_1 )
          | ( x('System_String','System_Collections_Generic_IEnumerable_1___System_Char') != true_1 )
          | ~ ! [X56: $int,X60: $int,X57: $int,X59: $int,X58: $int] :
                ( ~ ( ( true_1 != x(typeof(X60),'NonNullRefArray'(X56,X57)) )
                    | ( true_1 != 'IsHeap'(X59) ) )
               => ( nullObject != 'RefArrayGet'(select2(X59,X60,elements),X58) ) )
          | ( x('System_Array','System_Object') != true_1 )
          | ~ ! [X53: $int,X54: $int] :
                ( ( ( true_1 = x(typeof(X54),X53) )
                  | ( nullObject = X54 ) )
              <=> ( true_1 = 'Is'(X54,X53) ) )
          | ( 'System_Object' != X0 )
          | ~ ! [X286: $int,X287: $int,X289: $int,X288: $int] :
                ( ( true_1 = 'IsHeap'(X287) )
               => ( true_1 = 'InRange'(select2(X287,X286,'AsRangeField'(X288,X289)),X289) ) )
          | ~ $less(int_9223372036854775807,int_18446744073709551615)
          | ~ ! [X323: $int,X324: $int] :
              ? [X325: $int] :
                ( ( min(X324,X323) = X325 )
                & ~ ( $less(X324,X325)
                    | $less(X323,X325)
                    | ~ ( ( X323 = X325 )
                        | ( X324 = X325 ) ) ) )
          | ~ ! [X143: $int,X144: $int] : ( 'System_Object' = typeof('ElementProxy'(X144,X143)) )
          | ( 'AsInterface'('System_IEquatable_1___System_String') != 'System_IEquatable_1___System_String' )
          | ~ ! [X328: $int,X329: $int,X327: $int] :
                ( ( true_1 != X329 )
               => ( 'IfThenElse'(X329,X327,X328) = X328 ) )
          | ~ ! [X372: $int,X371: $int] : ( 'ElementType'('NonNullRefArray'(X372,X371)) = X372 )
          | ~ ! [X164: $int,X166: $int,X165: $int] :
                ( ( true_1 = x(X166,'ValueArray'(X164,X165)) )
               => ( 'ArrayCategoryValue' = 'ArrayCategory'(X166) ) )
          | ~ ! [X140: $int,X141: $int,X142: $int] :
                ( ~ ( ( true_1 != x(typeof(X140),'RefArray'(X141,X142)) )
                    | ( nullObject = X140 ) )
               => ( 'Rank'(X140) = X142 ) )
          | ~ ! [X261: $int,X258: $int,X260: $int,X259: $int] :
                ( ( X258 != X260 )
               => ( 'StructGet'('StructSet'(X259,X258,X261),X260) = 'StructGet'(X259,X260) ) )
          | ~ ! [X234: $int,X236: $int,X235: $int,X233: $int] :
              ? [X237: $int] :
                ( ( ~ ( ( nullObject = X237 )
                      | ( true_1 != 'IsHeap'(X236) ) )
                 => ~ ( ( select2(X236,X237,ownerFrame) != X235 )
                      | ( select2(X236,X237,ownerRef) != X233 ) ) )
                & ( select2(X236,X233,'AsRepField'(X234,X235)) = X237 ) )
          | ( 'IsValueType'('System_Boolean') != true_1 )
          | ~ ! [X78: $int,X77: $int] : ( 'UBound'(X78,X77) = $sum('DimLength'(X78,X77),$uminus(1)) )
          | ~ ! [X374: $int,X373: $int,X375: $int] :
                ( ( true_1 = 'IsAllocated'(X374,X375) )
               => ( true_1 = 'IsAllocated'(X374,'RefArrayGet'(X375,X373)) ) )
          | ( $sum(int_m2147483648,1) != $sum(0,$uminus(int_2147483647)) )
          | ( 'DeclType'('NonNullFieldsAreInitialized') != 'System_Object' )
          | ~ ! [X215: $int,X214: $int] : ( 0 = 'LBound'(X214,X215) )
          | ~ ! [X162: $int] : ( true_1 = 'IsNotNull'('TypeObject'(X162),'System_Type') )
          | ~ ! [X55: $int] :
                ( ( true_1 = 'IsHeap'(X55) )
               => ( true_1 = select2(X55,stringLiteral0,allocated) ) )
          | ~ ! [X26: $int,X27: $int] : ( x_2(X26,X27) = $sum(X26,$uminus($product(x_1(X26,X27),X27))) )
          | ~ ! [X281: $int,X278: $int,X280: $int,X279: $int] :
                ( ( true_1 != 'IsValueType'('UnboxedType'(X281)) )
               => ( 'BoxFunc'(X281,X280,X278,X279) = X281 ) )
          | ~ ! [X103: $int,X101: $int,X102: $int] :
                ( ~ ( ( true_1 != 'StringEquals'(X103,X102) )
                    | ( true_1 != 'StringEquals'(X101,X103) ) )
               => ( true_1 = 'StringEquals'(X101,X102) ) )
          | ~ ! [X341: $int,X338: $int,X339: $int,X340: $int] :
                ( ( X338 != X339 )
               => ( 'ValueArrayGet'(X341,X338) = 'ValueArrayGet'('ValueArraySet'(X341,X339,X340),X338) ) )
          | ~ ! [X2: $int,X3: $int] :
              ? [X4: $int] :
                ( ( ~ ( ~ $less(X2,32768)
                      | $less(16,X3)
                      | $less(X3,0)
                      | $less(X2,0) )
                 => ~ ( $less(X4,0)
                      | $less(int_2147483647,X4) ) )
                & ( shl(X2,X3) = X4 ) )
          | ~ ! [X163: $int] : ( true_1 != x(typeof('ClassRepr'(X163)),'System_Object') )
          | ( x('System_String','System_IEquatable_1___System_String') != true_1 )
          | ~ ! [X99: $int,X98: $int] :
              ? [X100: $int] :
                ( ( ~ ( ( true_1 != x('UnboxedType'(X100),'System_Object') )
                      | ( X99 != X100 ) )
                 => ( X98 = X99 ) )
                & ( 'Box'(X98,X99) = X100 ) )
          | ~ ! [X180: $int,X179: $int,X182: $int,X181: $int] :
                ( ( X180 != X181 )
               => ( 'IntArrayGet'('IntArraySet'(X182,X181,X179),X180) = 'IntArrayGet'(X182,X180) ) )
          | ~ ! [X299: $int,X300: $int,X298: $int] :
                ( ( true_1 = 'IsAllocated'(X300,X299) )
               => ( true_1 = 'IsAllocated'(X300,'ValueArrayGet'(X299,X298)) ) )
          | ( 'IsImmutable'('System_String') != true_1 )
          | ~ ! [X291: $int] :
              ? [X292: $int] :
                ( ~ ( ~ ( ( 'System_Object' != X291 )
                       => ( X291 != X292 ) )
                    | ( true_1 != x(X291,X292) ) )
                & ( 'BaseClass'(X291) = X292 ) )
          | ~ ! [X130: $int] :
                ( ( true_1 = x(X130,'System_String') )
               => ( 'System_String' = X130 ) )
          | ~ ! [X105: $int,X106: $int,X104: $int] :
              ? [X107: $int] :
                ( ( ( true_1 = x(X106,X107) )
                 => ( X106 = X107 ) )
                & ( 'ValueArray'(X104,X105) = X107 ) )
          | ~ ! [X138: $int,X139: $int,X137: $int] :
                ( ( true_1 = x(X137,X138) )
               => ( true_1 = x('RefArray'(X137,X139),'RefArray'(X138,X139)) ) )
          | ( 'IncludeInMainFrameCondition'(ownerFrame) != true_1 )
          | ~ ! [X342: $int] :
                ( ( true_1 = 'IsHeap'(X342) )
               => ( stringLiteral0 = 'System_String_IsInterned_System_String_notnull'(X342,stringLiteral0) ) )
          | ( x('System_ICloneable','System_ICloneable') != true_1 )
          | ~ ! [X187: $int,X186: $int] :
                ( ~ ( ( true_1 != x(typeof(X186),'System_Array') )
                    | ( true_1 != 'IsHeap'(X187) )
                    | ( true_1 != 'IsAllocated'(X187,X186) ) )
               => ( true_1 = 'IsAllocated'(X187,'ElementProxy'(X186,$sum(0,$uminus(1)))) ) )
          | ~ ! [X190: $int,X191: $int] : ( 'System_Object' = typeof('ElementProxyStruct'(X191,X190)) )
          | ( 'IncludeInMainFrameCondition'(exposeVersion) != true_1 )
          | ~ ! [X290: $int] :
                ( ~ ( $less(X290,int_m2147483648)
                    | $less(int_2147483647,X290) )
              <=> ( true_1 = 'InRange'(X290,'System_Int32') ) )
          | ~ ! [X38: $int,X37: $int] :
              ? [X40: $int,X39: $int,X41: $int] :
                ( ( ~ ( ( true_1 != x(select2(X37,X40,inv),X39) )
                      | ( true_1 != 'IsHeap'(X37) )
                      | ( select2(X37,X40,localinv) = 'BaseClass'(X39) )
                      | ( 'PeerGroupPlaceholder' = X39 ) )
                 => ~ ( ( select2(X37,X38,inv) != X41 )
                      | ( select2(X37,X38,localinv) != X41 ) ) )
                & ( select2(X37,X38,ownerRef) = X40 )
                & ( select2(X37,X38,ownerFrame) = X39 )
                & ( typeof(X38) = X41 ) )
          | ~ ! [X271: $int,X270: $int] :
                ( ~ ( ( true_1 != x(typeof(X270),'AsImmutable'(X271)) )
                    | ( 'BeingConstructed' = X270 )
                    | ( nullObject = X270 ) )
               => ! [X272: $int] :
                  ? [X273: $int] :
                    ( ( ( true_1 = 'IsHeap'(X272) )
                     => ~ ( ~ ! [X274: $int] :
                                ( ( 'AsOwner'(X270,select2(X272,X274,ownerRef)) = X270 )
                               => ( ( 'PeerGroupPlaceholder' != select2(X272,X274,ownerFrame) )
                                  | ( X270 = X274 ) ) )
                          | ( select2(X272,X270,localinv) != X273 )
                          | ( select2(X272,X270,inv) != X273 )
                          | ( 'PeerGroupPlaceholder' != select2(X272,X270,ownerFrame) )
                          | ( 'AsOwner'(X270,select2(X272,X270,ownerRef)) != X270 ) ) )
                    & ( typeof(X270) = X273 ) ) )
          | ( 'IsStaticField'(exposeVersion) = true_1 ) ) ),
    inference(flattening,[],[f25]) ).

tff(f28,plain,
    ? [X0: $int,X1: $int,X2: $int] :
      ( ( select2('Heap_1',this,ownerFrame) = X2 )
      & ( select2('Heap_1',this,ownerRef) = X0 )
      & ( typeof(this) = X1 )
      & ? [X3: $int,X4: $int] :
          ( ( X4 = select2('Heap',this,ownerRef) )
          & ( X3 = select2('Heap',this,ownerFrame) )
          & ? [X5: $int,X6: $int] :
              ( ~ ( ( ( ( 'IsHeap'('Heap') = true_1 )
                     => ( ~ ( ( 'IsNotNull'(this,'Factorial') != true_1 )
                            | ( select2('Heap',this,allocated) != true_1 ) )
                       => ( ( 'PurityAxiomsCanBeAssumed' = true_1 )
                         => ( ( 'BeingConstructed' = this )
                           => ( ~ ( ( X3 != 'PeerGroupPlaceholder' )
                                  | ( X4 != this )
                                  | ~ ! [X7: $int] :
                                        ( ( X7 != this )
                                       => ( select2('Heap',X7,ownerRef) != this ) ) )
                             => ( ~ ( ( select2('Heap',this,localinv) != X1 )
                                    | ( select2('Heap',this,inv) != 'System_Object' )
                                    | ~ ( ( select2('Heap',X4,localinv) = 'BaseClass'(X3) )
                                        | ( x(select2('Heap',X4,inv),X3) != true_1 )
                                        | ( X3 = 'PeerGroupPlaceholder' ) ) )
                               => ( ( ( ( ~ ( ( this = nullObject )
                                            | ~ ( ( this != nullObject )
                                               => ( ( 'IsHeap'('Heap_0') = true_1 )
                                                 => ( ( select2('Heap_0',this,allocated) = true_1 )
                                                   => ( ~ ( ( select2('Heap_0',this,inv) != 'System_Object' )
                                                          | ~ ( ( true_1 != x(select2('Heap_0',X5,inv),X6) )
                                                              | ( select2('Heap_0',X5,localinv) = 'BaseClass'(X6) )
                                                              | ( 'PeerGroupPlaceholder' = X6 ) )
                                                          | ( select2('Heap_0',this,localinv) != X1 ) )
                                                     => ( ~ ( ( X4 != X5 )
                                                            | ( X3 != X6 ) )
                                                       => ( ( select2('Heap_0',this,sharingMode) = 'SharingMode_Unshared' )
                                                         => ( ! [X8: $int] :
                                                              ? [X9: $int] :
                                                                ( ( ~ ( ( true_1 != select2('Heap_0',X8,allocated) )
                                                                      | ( nullObject = X8 )
                                                                      | ( true_1 = select2('Heap',X8,allocated) ) )
                                                                 => ~ ( ( select2('Heap_0',X8,inv) != X9 )
                                                                      | ( select2('Heap_0',X8,localinv) != X9 ) ) )
                                                                & ( typeof(X8) = X9 ) )
                                                           => ( ! [X10: $int] :
                                                                ? [X11: $int] :
                                                                  ( ( ( select2('Heap',X11,exposeVersion) = select2('Heap_0',X11,exposeVersion) )
                                                                   => ( select2('Heap_0',X10,'FirstConsistentOwner') = X11 ) )
                                                                  & ( select2('Heap',X10,'FirstConsistentOwner') = X11 ) )
                                                             => ( ! [X13: $int,X12: $int] :
                                                                  ? [X14: $int,X15: $int] :
                                                                    ( ( select2('Heap',X13,ownerRef) = X14 )
                                                                    & ( select2('Heap',X13,ownerFrame) = X15 )
                                                                    & ( ~ ( ~ ( ( true_1 != x('System_Object','DeclType'(X12)) )
                                                                              | ( this != X13 ) )
                                                                          | ~ ( ( true_1 != x(select2('Heap',X14,inv),X15) )
                                                                              | ( 'PeerGroupPlaceholder' = X15 )
                                                                              | ( 'BaseClass'(X15) = select2('Heap',X14,localinv) ) )
                                                                          | ( true_1 != select2('Heap',X13,allocated) )
                                                                          | ( true_1 != 'IncludeInMainFrameCondition'(X12) )
                                                                          | ( nullObject = X13 ) )
                                                                     => ( select2('Heap_0',X13,X12) = select2('Heap',X13,X12) ) ) )
                                                               => ( ( 'HeapSucc'('Heap','Heap_0') = true_1 )
                                                                 => ( ! [X16: $int] :
                                                                        ( ~ ( ( this = X16 )
                                                                            | ( true_1 != select2('Heap',X16,allocated) ) )
                                                                       => ~ ( ( select2('Heap',X16,inv) != select2('Heap_0',X16,inv) )
                                                                            | ( select2('Heap',X16,localinv) != select2('Heap_0',X16,localinv) ) ) )
                                                                   => ( ~ ( ~ ! [X19: $int] :
                                                                                ( ( true_1 = select2('Heap',X19,allocated) )
                                                                               => ( true_1 = select2('Heap_0',X19,allocated) ) )
                                                                          | ~ ! [X17: $int] :
                                                                              ? [X18: $int] :
                                                                                ( ( select2('Heap',X17,ownerFrame) = X18 )
                                                                                & ( ~ ( ( true_1 != select2('Heap',X17,allocated) )
                                                                                      | ( 'PeerGroupPlaceholder' = X18 ) )
                                                                                 => ~ ( ( select2('Heap_0',X17,ownerFrame) != X18 )
                                                                                      | ( select2('Heap_0',X17,ownerRef) != select2('Heap',X17,ownerRef) ) ) ) )
                                                                          | ~ ( ( select2('Heap_0','BeingConstructed','NonNullFieldsAreInitialized') = true_1 )
                                                                            <=> ( select2('Heap','BeingConstructed','NonNullFieldsAreInitialized') = true_1 ) ) )
                                                                     => ( ! [X20: $int] :
                                                                            ( ( this = X20 )
                                                                            | ( select2('Heap_0',X20,sharingMode) = select2('Heap',X20,sharingMode) ) )
                                                                       => ~ ( ( this = nullObject )
                                                                            | ~ ( ( this != nullObject )
                                                                               => ~ ( ~ ~ ( ( select2('Heap_0',this,inv) != 'System_Object' )
                                                                                          | ( select2('Heap_0',this,localinv) != X1 ) )
                                                                                    | ~ ( ~ ( ( select2('Heap_0',this,localinv) != X1 )
                                                                                            | ( select2('Heap_0',this,inv) != 'System_Object' ) )
                                                                                       => ~ ( ~ ( ! [X21: $int] :
                                                                                                  ? [X22: $int] :
                                                                                                    ( ( ~ ( ( this != select2('Heap_0',X21,ownerRef) )
                                                                                                          | ( 'Factorial' != select2('Heap_0',X21,ownerFrame) )
                                                                                                          | ( nullObject = X21 )
                                                                                                          | ( true_1 != select2('Heap_0',X21,allocated) ) )
                                                                                                     => ~ ( ( select2('Heap_0',X21,localinv) != X22 )
                                                                                                          | ( select2('Heap_0',X21,inv) != X22 ) ) )
                                                                                                    & ( typeof(X21) = X22 ) )
                                                                                               => ( ( 'Heap_1' = store2('Heap_0',this,inv,'Factorial') )
                                                                                                 => ( ( 'IsHeap'('Heap_1') = true_1 )
                                                                                                   => ( ( ~ ( ~ ! [X23: $int,X24: $int] :
                                                                                                                ? [X26: $int,X25: $int] :
                                                                                                                  ( ( ~ ( ( nullObject = X24 )
                                                                                                                        | ( true_1 != select2('Heap',X24,allocated) )
                                                                                                                        | ~ ( ( true_1 != x('Factorial','DeclType'(X23)) )
                                                                                                                            | ( this != X24 ) )
                                                                                                                        | ~ ( ( 'PeerGroupPlaceholder' = X26 )
                                                                                                                            | ( true_1 != x(select2('Heap',X25,inv),X26) )
                                                                                                                            | ( select2('Heap',X25,localinv) = 'BaseClass'(X26) ) )
                                                                                                                        | ( true_1 != 'IncludeInMainFrameCondition'(X23) ) )
                                                                                                                   => ( select2('Heap',X24,X23) = select2('Heap_1',X24,X23) ) )
                                                                                                                  & ( select2('Heap',X24,ownerRef) = X25 )
                                                                                                                  & ( select2('Heap',X24,ownerFrame) = X26 ) )
                                                                                                            | ~ ( ! [X28: $int,X27: $int] :
                                                                                                                  ? [X29: $int,X30: $int] :
                                                                                                                    ( ( select2('Heap',X28,ownerRef) = X29 )
                                                                                                                    & ( select2('Heap',X28,ownerFrame) = X30 )
                                                                                                                    & ( ~ ( ~ ( ( true_1 != x(select2('Heap',X29,inv),X30) )
                                                                                                                              | ( select2('Heap',X29,localinv) = 'BaseClass'(X30) )
                                                                                                                              | ( 'PeerGroupPlaceholder' = X30 ) )
                                                                                                                          | ( true_1 != 'IncludeInMainFrameCondition'(X27) )
                                                                                                                          | ( nullObject = X28 )
                                                                                                                          | ~ ( ( this != X28 )
                                                                                                                              | ( true_1 != x('Factorial','DeclType'(X27)) ) )
                                                                                                                          | ( true_1 != select2('Heap',X28,allocated) ) )
                                                                                                                     => ( select2('Heap',X28,X27) = select2('Heap_1',X28,X27) ) ) )
                                                                                                               => ~ ( ~ ( ( select2('Heap_1',this,sharingMode) = 'SharingMode_Unshared' )
                                                                                                                       => ~ ( ~ ( ~ ( ( X2 != X3 )
                                                                                                                                    | ( X0 != X4 ) )
                                                                                                                               => ~ ( ~ ~ ( ( select2('Heap_1',this,inv) != 'Factorial' )
                                                                                                                                          | ( select2('Heap_1',this,localinv) != X1 )
                                                                                                                                          | ~ ( ( 'PeerGroupPlaceholder' = X2 )
                                                                                                                                              | ( true_1 != x(select2('Heap_1',X0,inv),X2) )
                                                                                                                                              | ( select2('Heap_1',X0,localinv) = 'BaseClass'(X2) ) ) )
                                                                                                                                    | ~ ( ~ ( ( select2('Heap_1',this,inv) != 'Factorial' )
                                                                                                                                            | ~ ( ( select2('Heap_1',X0,localinv) = 'BaseClass'(X2) )
                                                                                                                                                | ( true_1 != x(select2('Heap_1',X0,inv),X2) )
                                                                                                                                                | ( 'PeerGroupPlaceholder' = X2 ) )
                                                                                                                                            | ( select2('Heap_1',this,localinv) != X1 ) )
                                                                                                                                       => $true ) ) )
                                                                                                                            | ~ ~ ( ( X2 != X3 )
                                                                                                                                  | ( X0 != X4 ) ) ) )
                                                                                                                    | ( select2('Heap_1',this,sharingMode) != 'SharingMode_Unshared' ) ) ) )
                                                                                                       => ( 'ReallyLastGeneratedExit_correct' = true_1 ) )
                                                                                                     => ( 'ReallyLastGeneratedExit_correct' = true_1 ) ) ) ) )
                                                                                            | ~ ! [X31: $int] :
                                                                                                ? [X32: $int] :
                                                                                                  ( ( typeof(X31) = X32 )
                                                                                                  & ( ~ ( ( this != select2('Heap_0',X31,ownerRef) )
                                                                                                        | ( true_1 != select2('Heap_0',X31,allocated) )
                                                                                                        | ( 'Factorial' != select2('Heap_0',X31,ownerFrame) )
                                                                                                        | ( nullObject = X31 ) )
                                                                                                   => ~ ( ( select2('Heap_0',X31,inv) != X32 )
                                                                                                        | ( select2('Heap_0',X31,localinv) != X32 ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
                                       => ( block4301_correct = true_1 ) )
                                     => ( block4301_correct = true_1 ) )
                                   => ( block4284_correct = true_1 ) )
                                 => ( block4284_correct = true_1 ) ) ) ) ) ) ) )
                   => ( entry_correct = true_1 ) )
                 => ( entry_correct = true_1 ) )
              & ( select2('Heap_0',this,ownerFrame) = X6 )
              & ( select2('Heap_0',this,ownerRef) = X5 ) ) ) ),
    inference(rectify,[],[f3]) ).

tff(f29,plain,
    ? [X0: $int,X1: $int,X2: $int] :
      ( ( select2('Heap_1',this,ownerFrame) = X2 )
      & ( select2('Heap_1',this,ownerRef) = X0 )
      & ( typeof(this) = X1 )
      & ? [X3: $int,X4: $int] :
          ( ( X4 = select2('Heap',this,ownerRef) )
          & ( X3 = select2('Heap',this,ownerFrame) )
          & ? [X5: $int,X6: $int] :
              ( ~ ( ( ( ( 'IsHeap'('Heap') = true_1 )
                     => ( ~ ( ( 'IsNotNull'(this,'Factorial') != true_1 )
                            | ( select2('Heap',this,allocated) != true_1 ) )
                       => ( ( 'PurityAxiomsCanBeAssumed' = true_1 )
                         => ( ( 'BeingConstructed' = this )
                           => ( ~ ( ( X3 != 'PeerGroupPlaceholder' )
                                  | ( X4 != this )
                                  | ~ ! [X7: $int] :
                                        ( ( X7 != this )
                                       => ( select2('Heap',X7,ownerRef) != this ) ) )
                             => ( ~ ( ( select2('Heap',this,localinv) != X1 )
                                    | ( select2('Heap',this,inv) != 'System_Object' )
                                    | ~ ( ( select2('Heap',X4,localinv) = 'BaseClass'(X3) )
                                        | ( x(select2('Heap',X4,inv),X3) != true_1 )
                                        | ( X3 = 'PeerGroupPlaceholder' ) ) )
                               => ( ( ( ( ~ ( ( this = nullObject )
                                            | ~ ( ( this != nullObject )
                                               => ( ( 'IsHeap'('Heap_0') = true_1 )
                                                 => ( ( select2('Heap_0',this,allocated) = true_1 )
                                                   => ( ~ ( ( select2('Heap_0',this,inv) != 'System_Object' )
                                                          | ~ ( ( true_1 != x(select2('Heap_0',X5,inv),X6) )
                                                              | ( select2('Heap_0',X5,localinv) = 'BaseClass'(X6) )
                                                              | ( 'PeerGroupPlaceholder' = X6 ) )
                                                          | ( select2('Heap_0',this,localinv) != X1 ) )
                                                     => ( ~ ( ( X4 != X5 )
                                                            | ( X3 != X6 ) )
                                                       => ( ( select2('Heap_0',this,sharingMode) = 'SharingMode_Unshared' )
                                                         => ( ! [X8: $int] :
                                                              ? [X9: $int] :
                                                                ( ( ~ ( ( true_1 != select2('Heap_0',X8,allocated) )
                                                                      | ( nullObject = X8 )
                                                                      | ( true_1 = select2('Heap',X8,allocated) ) )
                                                                 => ~ ( ( select2('Heap_0',X8,inv) != X9 )
                                                                      | ( select2('Heap_0',X8,localinv) != X9 ) ) )
                                                                & ( typeof(X8) = X9 ) )
                                                           => ( ! [X10: $int] :
                                                                ? [X11: $int] :
                                                                  ( ( ( select2('Heap',X11,exposeVersion) = select2('Heap_0',X11,exposeVersion) )
                                                                   => ( select2('Heap_0',X10,'FirstConsistentOwner') = X11 ) )
                                                                  & ( select2('Heap',X10,'FirstConsistentOwner') = X11 ) )
                                                             => ( ! [X13: $int,X12: $int] :
                                                                  ? [X14: $int,X15: $int] :
                                                                    ( ( select2('Heap',X13,ownerRef) = X14 )
                                                                    & ( select2('Heap',X13,ownerFrame) = X15 )
                                                                    & ( ~ ( ~ ( ( true_1 != x('System_Object','DeclType'(X12)) )
                                                                              | ( this != X13 ) )
                                                                          | ~ ( ( true_1 != x(select2('Heap',X14,inv),X15) )
                                                                              | ( 'PeerGroupPlaceholder' = X15 )
                                                                              | ( 'BaseClass'(X15) = select2('Heap',X14,localinv) ) )
                                                                          | ( true_1 != select2('Heap',X13,allocated) )
                                                                          | ( true_1 != 'IncludeInMainFrameCondition'(X12) )
                                                                          | ( nullObject = X13 ) )
                                                                     => ( select2('Heap_0',X13,X12) = select2('Heap',X13,X12) ) ) )
                                                               => ( ( 'HeapSucc'('Heap','Heap_0') = true_1 )
                                                                 => ( ! [X16: $int] :
                                                                        ( ~ ( ( this = X16 )
                                                                            | ( true_1 != select2('Heap',X16,allocated) ) )
                                                                       => ~ ( ( select2('Heap',X16,inv) != select2('Heap_0',X16,inv) )
                                                                            | ( select2('Heap',X16,localinv) != select2('Heap_0',X16,localinv) ) ) )
                                                                   => ( ~ ( ~ ! [X19: $int] :
                                                                                ( ( true_1 = select2('Heap',X19,allocated) )
                                                                               => ( true_1 = select2('Heap_0',X19,allocated) ) )
                                                                          | ~ ! [X17: $int] :
                                                                              ? [X18: $int] :
                                                                                ( ( select2('Heap',X17,ownerFrame) = X18 )
                                                                                & ( ~ ( ( true_1 != select2('Heap',X17,allocated) )
                                                                                      | ( 'PeerGroupPlaceholder' = X18 ) )
                                                                                 => ~ ( ( select2('Heap_0',X17,ownerFrame) != X18 )
                                                                                      | ( select2('Heap_0',X17,ownerRef) != select2('Heap',X17,ownerRef) ) ) ) )
                                                                          | ~ ( ( select2('Heap_0','BeingConstructed','NonNullFieldsAreInitialized') = true_1 )
                                                                            <=> ( select2('Heap','BeingConstructed','NonNullFieldsAreInitialized') = true_1 ) ) )
                                                                     => ( ! [X20: $int] :
                                                                            ( ( this = X20 )
                                                                            | ( select2('Heap_0',X20,sharingMode) = select2('Heap',X20,sharingMode) ) )
                                                                       => ~ ( ( this = nullObject )
                                                                            | ~ ( ( this != nullObject )
                                                                               => ~ ( ~ ~ ( ( select2('Heap_0',this,inv) != 'System_Object' )
                                                                                          | ( select2('Heap_0',this,localinv) != X1 ) )
                                                                                    | ~ ( ~ ( ( select2('Heap_0',this,localinv) != X1 )
                                                                                            | ( select2('Heap_0',this,inv) != 'System_Object' ) )
                                                                                       => ~ ( ~ ( ! [X21: $int] :
                                                                                                  ? [X22: $int] :
                                                                                                    ( ( ~ ( ( this != select2('Heap_0',X21,ownerRef) )
                                                                                                          | ( 'Factorial' != select2('Heap_0',X21,ownerFrame) )
                                                                                                          | ( nullObject = X21 )
                                                                                                          | ( true_1 != select2('Heap_0',X21,allocated) ) )
                                                                                                     => ~ ( ( select2('Heap_0',X21,localinv) != X22 )
                                                                                                          | ( select2('Heap_0',X21,inv) != X22 ) ) )
                                                                                                    & ( typeof(X21) = X22 ) )
                                                                                               => ( ( 'Heap_1' = store2('Heap_0',this,inv,'Factorial') )
                                                                                                 => ( ( 'IsHeap'('Heap_1') = true_1 )
                                                                                                   => ( ( ~ ( ~ ! [X23: $int,X24: $int] :
                                                                                                                ? [X26: $int,X25: $int] :
                                                                                                                  ( ( ~ ( ( nullObject = X24 )
                                                                                                                        | ( true_1 != select2('Heap',X24,allocated) )
                                                                                                                        | ~ ( ( true_1 != x('Factorial','DeclType'(X23)) )
                                                                                                                            | ( this != X24 ) )
                                                                                                                        | ~ ( ( 'PeerGroupPlaceholder' = X26 )
                                                                                                                            | ( true_1 != x(select2('Heap',X25,inv),X26) )
                                                                                                                            | ( select2('Heap',X25,localinv) = 'BaseClass'(X26) ) )
                                                                                                                        | ( true_1 != 'IncludeInMainFrameCondition'(X23) ) )
                                                                                                                   => ( select2('Heap',X24,X23) = select2('Heap_1',X24,X23) ) )
                                                                                                                  & ( select2('Heap',X24,ownerRef) = X25 )
                                                                                                                  & ( select2('Heap',X24,ownerFrame) = X26 ) )
                                                                                                            | ~ ( ! [X28: $int,X27: $int] :
                                                                                                                  ? [X29: $int,X30: $int] :
                                                                                                                    ( ( select2('Heap',X28,ownerRef) = X29 )
                                                                                                                    & ( select2('Heap',X28,ownerFrame) = X30 )
                                                                                                                    & ( ~ ( ~ ( ( true_1 != x(select2('Heap',X29,inv),X30) )
                                                                                                                              | ( select2('Heap',X29,localinv) = 'BaseClass'(X30) )
                                                                                                                              | ( 'PeerGroupPlaceholder' = X30 ) )
                                                                                                                          | ( true_1 != 'IncludeInMainFrameCondition'(X27) )
                                                                                                                          | ( nullObject = X28 )
                                                                                                                          | ~ ( ( this != X28 )
                                                                                                                              | ( true_1 != x('Factorial','DeclType'(X27)) ) )
                                                                                                                          | ( true_1 != select2('Heap',X28,allocated) ) )
                                                                                                                     => ( select2('Heap',X28,X27) = select2('Heap_1',X28,X27) ) ) )
                                                                                                               => ~ ( ~ ( ( select2('Heap_1',this,sharingMode) = 'SharingMode_Unshared' )
                                                                                                                       => ~ ( ~ ( ~ ( ( X2 != X3 )
                                                                                                                                    | ( X0 != X4 ) )
                                                                                                                               => ~ ~ ~ ( ( select2('Heap_1',this,inv) != 'Factorial' )
                                                                                                                                        | ( select2('Heap_1',this,localinv) != X1 )
                                                                                                                                        | ~ ( ( 'PeerGroupPlaceholder' = X2 )
                                                                                                                                            | ( true_1 != x(select2('Heap_1',X0,inv),X2) )
                                                                                                                                            | ( select2('Heap_1',X0,localinv) = 'BaseClass'(X2) ) ) ) )
                                                                                                                            | ~ ~ ( ( X2 != X3 )
                                                                                                                                  | ( X0 != X4 ) ) ) )
                                                                                                                    | ( select2('Heap_1',this,sharingMode) != 'SharingMode_Unshared' ) ) ) )
                                                                                                       => ( 'ReallyLastGeneratedExit_correct' = true_1 ) )
                                                                                                     => ( 'ReallyLastGeneratedExit_correct' = true_1 ) ) ) ) )
                                                                                            | ~ ! [X31: $int] :
                                                                                                ? [X32: $int] :
                                                                                                  ( ( typeof(X31) = X32 )
                                                                                                  & ( ~ ( ( this != select2('Heap_0',X31,ownerRef) )
                                                                                                        | ( true_1 != select2('Heap_0',X31,allocated) )
                                                                                                        | ( 'Factorial' != select2('Heap_0',X31,ownerFrame) )
                                                                                                        | ( nullObject = X31 ) )
                                                                                                   => ~ ( ( select2('Heap_0',X31,inv) != X32 )
                                                                                                        | ( select2('Heap_0',X31,localinv) != X32 ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
                                       => ( block4301_correct = true_1 ) )
                                     => ( block4301_correct = true_1 ) )
                                   => ( block4284_correct = true_1 ) )
                                 => ( block4284_correct = true_1 ) ) ) ) ) ) ) )
                   => ( entry_correct = true_1 ) )
                 => ( entry_correct = true_1 ) )
              & ( select2('Heap_0',this,ownerFrame) = X6 )
              & ( select2('Heap_0',this,ownerRef) = X5 ) ) ) ),
    inference(true_and_false_elimination,[],[f28]) ).

tff(f30,plain,
    ? [X0: $int,X2: $int,X1: $int] :
      ( ( select2('Heap_1',this,ownerRef) = X0 )
      & ( typeof(this) = X1 )
      & ( select2('Heap_1',this,ownerFrame) = X2 )
      & ? [X4: $int,X3: $int] :
          ( ( X4 = select2('Heap',this,ownerRef) )
          & ? [X6: $int,X5: $int] :
              ( ( select2('Heap_0',this,ownerRef) = X5 )
              & ( select2('Heap_0',this,ownerFrame) = X6 )
              & ~ ( ( ( ( 'IsHeap'('Heap') = true_1 )
                     => ( ~ ( ( 'IsNotNull'(this,'Factorial') != true_1 )
                            | ( select2('Heap',this,allocated) != true_1 ) )
                       => ( ( 'PurityAxiomsCanBeAssumed' = true_1 )
                         => ( ( 'BeingConstructed' = this )
                           => ( ~ ( ( X3 != 'PeerGroupPlaceholder' )
                                  | ( X4 != this )
                                  | ~ ! [X7: $int] :
                                        ( ( X7 != this )
                                       => ( select2('Heap',X7,ownerRef) != this ) ) )
                             => ( ~ ( ( select2('Heap',this,localinv) != X1 )
                                    | ( select2('Heap',this,inv) != 'System_Object' )
                                    | ~ ( ( select2('Heap',X4,localinv) = 'BaseClass'(X3) )
                                        | ( x(select2('Heap',X4,inv),X3) != true_1 )
                                        | ( X3 = 'PeerGroupPlaceholder' ) ) )
                               => ( ( ( ( ~ ( ~ ( ( this != nullObject )
                                               => ( ( 'IsHeap'('Heap_0') = true_1 )
                                                 => ( ( select2('Heap_0',this,allocated) = true_1 )
                                                   => ( ~ ( ( select2('Heap_0',this,inv) != 'System_Object' )
                                                          | ~ ( ( true_1 != x(select2('Heap_0',X5,inv),X6) )
                                                              | ( select2('Heap_0',X5,localinv) = 'BaseClass'(X6) )
                                                              | ( 'PeerGroupPlaceholder' = X6 ) )
                                                          | ( select2('Heap_0',this,localinv) != X1 ) )
                                                     => ( ~ ( ( X4 != X5 )
                                                            | ( X3 != X6 ) )
                                                       => ( ( select2('Heap_0',this,sharingMode) = 'SharingMode_Unshared' )
                                                         => ( ! [X8: $int] :
                                                              ? [X9: $int] :
                                                                ( ( ~ ( ( true_1 != select2('Heap_0',X8,allocated) )
                                                                      | ( nullObject = X8 )
                                                                      | ( true_1 = select2('Heap',X8,allocated) ) )
                                                                 => ~ ( ( select2('Heap_0',X8,inv) != X9 )
                                                                      | ( select2('Heap_0',X8,localinv) != X9 ) ) )
                                                                & ( typeof(X8) = X9 ) )
                                                           => ( ! [X10: $int] :
                                                                ? [X11: $int] :
                                                                  ( ( ( select2('Heap',X11,exposeVersion) = select2('Heap_0',X11,exposeVersion) )
                                                                   => ( select2('Heap_0',X10,'FirstConsistentOwner') = X11 ) )
                                                                  & ( select2('Heap',X10,'FirstConsistentOwner') = X11 ) )
                                                             => ( ! [X13: $int,X12: $int] :
                                                                  ? [X14: $int,X15: $int] :
                                                                    ( ( select2('Heap',X13,ownerRef) = X14 )
                                                                    & ( select2('Heap',X13,ownerFrame) = X15 )
                                                                    & ( ~ ( ~ ( ( true_1 != x('System_Object','DeclType'(X12)) )
                                                                              | ( this != X13 ) )
                                                                          | ~ ( ( true_1 != x(select2('Heap',X14,inv),X15) )
                                                                              | ( 'PeerGroupPlaceholder' = X15 )
                                                                              | ( 'BaseClass'(X15) = select2('Heap',X14,localinv) ) )
                                                                          | ( true_1 != select2('Heap',X13,allocated) )
                                                                          | ( true_1 != 'IncludeInMainFrameCondition'(X12) )
                                                                          | ( nullObject = X13 ) )
                                                                     => ( select2('Heap_0',X13,X12) = select2('Heap',X13,X12) ) ) )
                                                               => ( ( 'HeapSucc'('Heap','Heap_0') = true_1 )
                                                                 => ( ! [X16: $int] :
                                                                        ( ~ ( ( this = X16 )
                                                                            | ( true_1 != select2('Heap',X16,allocated) ) )
                                                                       => ~ ( ( select2('Heap',X16,inv) != select2('Heap_0',X16,inv) )
                                                                            | ( select2('Heap',X16,localinv) != select2('Heap_0',X16,localinv) ) ) )
                                                                   => ( ~ ( ~ ! [X19: $int] :
                                                                                ( ( true_1 = select2('Heap',X19,allocated) )
                                                                               => ( true_1 = select2('Heap_0',X19,allocated) ) )
                                                                          | ~ ! [X17: $int] :
                                                                              ? [X18: $int] :
                                                                                ( ( select2('Heap',X17,ownerFrame) = X18 )
                                                                                & ( ~ ( ( true_1 != select2('Heap',X17,allocated) )
                                                                                      | ( 'PeerGroupPlaceholder' = X18 ) )
                                                                                 => ~ ( ( select2('Heap_0',X17,ownerFrame) != X18 )
                                                                                      | ( select2('Heap_0',X17,ownerRef) != select2('Heap',X17,ownerRef) ) ) ) )
                                                                          | ~ ( ( select2('Heap_0','BeingConstructed','NonNullFieldsAreInitialized') = true_1 )
                                                                            <=> ( select2('Heap','BeingConstructed','NonNullFieldsAreInitialized') = true_1 ) ) )
                                                                     => ( ! [X20: $int] :
                                                                            ( ( this = X20 )
                                                                            | ( select2('Heap_0',X20,sharingMode) = select2('Heap',X20,sharingMode) ) )
                                                                       => ~ ( ~ ( ( this != nullObject )
                                                                               => ~ ( ( select2('Heap_0',this,inv) != 'System_Object' )
                                                                                    | ( select2('Heap_0',this,localinv) != X1 )
                                                                                    | ~ ( ~ ( ( select2('Heap_0',this,localinv) != X1 )
                                                                                            | ( select2('Heap_0',this,inv) != 'System_Object' ) )
                                                                                       => ~ ( ~ ! [X31: $int] :
                                                                                                ? [X32: $int] :
                                                                                                  ( ( typeof(X31) = X32 )
                                                                                                  & ( ~ ( ( this != select2('Heap_0',X31,ownerRef) )
                                                                                                        | ( true_1 != select2('Heap_0',X31,allocated) )
                                                                                                        | ( 'Factorial' != select2('Heap_0',X31,ownerFrame) )
                                                                                                        | ( nullObject = X31 ) )
                                                                                                   => ~ ( ( select2('Heap_0',X31,inv) != X32 )
                                                                                                        | ( select2('Heap_0',X31,localinv) != X32 ) ) ) )
                                                                                            | ~ ( ! [X21: $int] :
                                                                                                  ? [X22: $int] :
                                                                                                    ( ( ~ ( ( this != select2('Heap_0',X21,ownerRef) )
                                                                                                          | ( 'Factorial' != select2('Heap_0',X21,ownerFrame) )
                                                                                                          | ( nullObject = X21 )
                                                                                                          | ( true_1 != select2('Heap_0',X21,allocated) ) )
                                                                                                     => ~ ( ( select2('Heap_0',X21,localinv) != X22 )
                                                                                                          | ( select2('Heap_0',X21,inv) != X22 ) ) )
                                                                                                    & ( typeof(X21) = X22 ) )
                                                                                               => ( ( 'Heap_1' = store2('Heap_0',this,inv,'Factorial') )
                                                                                                 => ( ( 'IsHeap'('Heap_1') = true_1 )
                                                                                                   => ( ( ~ ( ~ ( ! [X28: $int,X27: $int] :
                                                                                                                  ? [X29: $int,X30: $int] :
                                                                                                                    ( ( select2('Heap',X28,ownerRef) = X29 )
                                                                                                                    & ( select2('Heap',X28,ownerFrame) = X30 )
                                                                                                                    & ( ~ ( ~ ( ( true_1 != x(select2('Heap',X29,inv),X30) )
                                                                                                                              | ( select2('Heap',X29,localinv) = 'BaseClass'(X30) )
                                                                                                                              | ( 'PeerGroupPlaceholder' = X30 ) )
                                                                                                                          | ( true_1 != 'IncludeInMainFrameCondition'(X27) )
                                                                                                                          | ( nullObject = X28 )
                                                                                                                          | ~ ( ( this != X28 )
                                                                                                                              | ( true_1 != x('Factorial','DeclType'(X27)) ) )
                                                                                                                          | ( true_1 != select2('Heap',X28,allocated) ) )
                                                                                                                     => ( select2('Heap',X28,X27) = select2('Heap_1',X28,X27) ) ) )
                                                                                                               => ~ ( ~ ( ( select2('Heap_1',this,sharingMode) = 'SharingMode_Unshared' )
                                                                                                                       => ~ ( ~ ( ~ ( ( X2 != X3 )
                                                                                                                                    | ( X0 != X4 ) )
                                                                                                                               => ~ ( ( select2('Heap_1',this,inv) != 'Factorial' )
                                                                                                                                    | ( select2('Heap_1',this,localinv) != X1 )
                                                                                                                                    | ~ ( ( 'PeerGroupPlaceholder' = X2 )
                                                                                                                                        | ( true_1 != x(select2('Heap_1',X0,inv),X2) )
                                                                                                                                        | ( select2('Heap_1',X0,localinv) = 'BaseClass'(X2) ) ) ) )
                                                                                                                            | ( X2 != X3 )
                                                                                                                            | ( X0 != X4 ) ) )
                                                                                                                    | ( select2('Heap_1',this,sharingMode) != 'SharingMode_Unshared' ) ) )
                                                                                                            | ~ ! [X23: $int,X24: $int] :
                                                                                                                ? [X26: $int,X25: $int] :
                                                                                                                  ( ( ~ ( ( nullObject = X24 )
                                                                                                                        | ( true_1 != select2('Heap',X24,allocated) )
                                                                                                                        | ~ ( ( true_1 != x('Factorial','DeclType'(X23)) )
                                                                                                                            | ( this != X24 ) )
                                                                                                                        | ~ ( ( 'PeerGroupPlaceholder' = X26 )
                                                                                                                            | ( true_1 != x(select2('Heap',X25,inv),X26) )
                                                                                                                            | ( select2('Heap',X25,localinv) = 'BaseClass'(X26) ) )
                                                                                                                        | ( true_1 != 'IncludeInMainFrameCondition'(X23) ) )
                                                                                                                   => ( select2('Heap',X24,X23) = select2('Heap_1',X24,X23) ) )
                                                                                                                  & ( select2('Heap',X24,ownerRef) = X25 )
                                                                                                                  & ( select2('Heap',X24,ownerFrame) = X26 ) ) )
                                                                                                       => ( 'ReallyLastGeneratedExit_correct' = true_1 ) )
                                                                                                     => ( 'ReallyLastGeneratedExit_correct' = true_1 ) ) ) ) ) ) ) ) )
                                                                            | ( this = nullObject ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
                                            | ( this = nullObject ) )
                                       => ( block4301_correct = true_1 ) )
                                     => ( block4301_correct = true_1 ) )
                                   => ( block4284_correct = true_1 ) )
                                 => ( block4284_correct = true_1 ) ) ) ) ) ) ) )
                   => ( entry_correct = true_1 ) )
                 => ( entry_correct = true_1 ) ) )
          & ( X3 = select2('Heap',this,ownerFrame) ) ) ),
    inference(flattening,[],[f29]) ).

tff(f31,plain,
    ? [X0: $int,X2: $int,X1: $int] :
      ( ( select2('Heap_1',this,ownerRef) = X0 )
      & ( typeof(this) = X1 )
      & ( select2('Heap_1',this,ownerFrame) = X2 )
      & ? [X4: $int,X3: $int] :
          ( ( X4 = select2('Heap',this,ownerRef) )
          & ? [X6: $int,X5: $int] :
              ( ( select2('Heap_0',this,ownerRef) = X5 )
              & ( select2('Heap_0',this,ownerFrame) = X6 )
              & ( true_1 != entry_correct )
              & ( ( entry_correct = true_1 )
                | ( ( true_1 != block4284_correct )
                  & ( ( block4284_correct = true_1 )
                    | ( ( true_1 != block4301_correct )
                      & ( ( block4301_correct = true_1 )
                        | ( ( ( ( ( select2('Heap_0',this,inv) != 'System_Object' )
                                | ( select2('Heap_0',this,localinv) != X1 )
                                | ( ( ? [X31: $int] :
                                      ! [X32: $int] :
                                        ( ( typeof(X31) != X32 )
                                        | ( ( ( select2('Heap_0',X31,inv) != X32 )
                                            | ( select2('Heap_0',X31,localinv) != X32 ) )
                                          & ( this = select2('Heap_0',X31,ownerRef) )
                                          & ( true_1 = select2('Heap_0',X31,allocated) )
                                          & ( 'Factorial' = select2('Heap_0',X31,ownerFrame) )
                                          & ( nullObject != X31 ) ) )
                                    | ( ( true_1 != 'ReallyLastGeneratedExit_correct' )
                                      & ( ( 'ReallyLastGeneratedExit_correct' = true_1 )
                                        | ( ( ( ( ( ( ( select2('Heap_1',this,inv) != 'Factorial' )
                                                    | ( ( true_1 = x(select2('Heap_1',X0,inv),X2) )
                                                      & ( select2('Heap_1',X0,localinv) != 'BaseClass'(X2) )
                                                      & ( 'PeerGroupPlaceholder' != X2 ) )
                                                    | ( select2('Heap_1',this,localinv) != X1 ) )
                                                  & ( X2 = X3 )
                                                  & ( X0 = X4 ) )
                                                | ( X2 != X3 )
                                                | ( X0 != X4 ) )
                                              & ( select2('Heap_1',this,sharingMode) = 'SharingMode_Unshared' ) )
                                            | ( select2('Heap_1',this,sharingMode) != 'SharingMode_Unshared' ) )
                                          & ! [X28: $int,X27: $int] :
                                            ? [X29: $int,X30: $int] :
                                              ( ( select2('Heap',X28,ownerRef) = X29 )
                                              & ( select2('Heap',X28,ownerFrame) = X30 )
                                              & ( ( select2('Heap',X28,X27) = select2('Heap_1',X28,X27) )
                                                | ( ( select2('Heap',X29,localinv) != 'BaseClass'(X30) )
                                                  & ( true_1 = x(select2('Heap',X29,inv),X30) )
                                                  & ( 'PeerGroupPlaceholder' != X30 ) )
                                                | ( true_1 != 'IncludeInMainFrameCondition'(X27) )
                                                | ( nullObject = X28 )
                                                | ( ( true_1 = x('Factorial','DeclType'(X27)) )
                                                  & ( this = X28 ) )
                                                | ( true_1 != select2('Heap',X28,allocated) ) ) ) )
                                        | ? [X23: $int,X24: $int] :
                                          ! [X26: $int,X25: $int] :
                                            ( ( ( select2('Heap',X24,X23) != select2('Heap_1',X24,X23) )
                                              & ( nullObject != X24 )
                                              & ( true_1 = select2('Heap',X24,allocated) )
                                              & ( ( true_1 != x('Factorial','DeclType'(X23)) )
                                                | ( this != X24 ) )
                                              & ( ( 'PeerGroupPlaceholder' = X26 )
                                                | ( true_1 != x(select2('Heap',X25,inv),X26) )
                                                | ( select2('Heap',X25,localinv) = 'BaseClass'(X26) ) )
                                              & ( true_1 = 'IncludeInMainFrameCondition'(X23) ) )
                                            | ( select2('Heap',X24,ownerRef) != X25 )
                                            | ( select2('Heap',X24,ownerFrame) != X26 ) ) )
                                      & ( 'IsHeap'('Heap_1') = true_1 )
                                      & ( 'Heap_1' = store2('Heap_0',this,inv,'Factorial') )
                                      & ! [X21: $int] :
                                        ? [X22: $int] :
                                          ( ( ( ( select2('Heap_0',X21,localinv) = X22 )
                                              & ( select2('Heap_0',X21,inv) = X22 ) )
                                            | ( this != select2('Heap_0',X21,ownerRef) )
                                            | ( 'Factorial' != select2('Heap_0',X21,ownerFrame) )
                                            | ( nullObject = X21 )
                                            | ( true_1 != select2('Heap_0',X21,allocated) ) )
                                          & ( typeof(X21) = X22 ) ) ) )
                                  & ( select2('Heap_0',this,localinv) = X1 )
                                  & ( 'System_Object' = select2('Heap_0',this,inv) ) ) )
                              & ( this != nullObject ) )
                            | ( this = nullObject ) )
                          & ! [X20: $int] :
                              ( ( this = X20 )
                              | ( select2('Heap_0',X20,sharingMode) = select2('Heap',X20,sharingMode) ) )
                          & ! [X19: $int] :
                              ( ( true_1 != select2('Heap',X19,allocated) )
                              | ( true_1 = select2('Heap_0',X19,allocated) ) )
                          & ! [X17: $int] :
                            ? [X18: $int] :
                              ( ( select2('Heap',X17,ownerFrame) = X18 )
                              & ( ( ( select2('Heap_0',X17,ownerRef) = select2('Heap',X17,ownerRef) )
                                  & ( select2('Heap_0',X17,ownerFrame) = X18 ) )
                                | ( true_1 != select2('Heap',X17,allocated) )
                                | ( 'PeerGroupPlaceholder' = X18 ) ) )
                          & ( ( select2('Heap_0','BeingConstructed','NonNullFieldsAreInitialized') = true_1 )
                          <=> ( select2('Heap','BeingConstructed','NonNullFieldsAreInitialized') = true_1 ) )
                          & ! [X16: $int] :
                              ( ( ( select2('Heap',X16,inv) = select2('Heap_0',X16,inv) )
                                & ( select2('Heap',X16,localinv) = select2('Heap_0',X16,localinv) ) )
                              | ( this = X16 )
                              | ( true_1 != select2('Heap',X16,allocated) ) )
                          & ( 'HeapSucc'('Heap','Heap_0') = true_1 )
                          & ! [X13: $int,X12: $int] :
                            ? [X14: $int,X15: $int] :
                              ( ( select2('Heap',X13,ownerRef) = X14 )
                              & ( select2('Heap',X13,ownerFrame) = X15 )
                              & ( ( select2('Heap_0',X13,X12) = select2('Heap',X13,X12) )
                                | ( ( this = X13 )
                                  & ( true_1 = x('System_Object','DeclType'(X12)) ) )
                                | ( ( 'PeerGroupPlaceholder' != X15 )
                                  & ( 'BaseClass'(X15) != select2('Heap',X14,localinv) )
                                  & ( true_1 = x(select2('Heap',X14,inv),X15) ) )
                                | ( true_1 != select2('Heap',X13,allocated) )
                                | ( true_1 != 'IncludeInMainFrameCondition'(X12) )
                                | ( nullObject = X13 ) ) )
                          & ! [X10: $int] :
                            ? [X11: $int] :
                              ( ( ( select2('Heap',X11,exposeVersion) != select2('Heap_0',X11,exposeVersion) )
                                | ( select2('Heap_0',X10,'FirstConsistentOwner') = X11 ) )
                              & ( select2('Heap',X10,'FirstConsistentOwner') = X11 ) )
                          & ! [X8: $int] :
                            ? [X9: $int] :
                              ( ( ( ( select2('Heap_0',X8,localinv) = X9 )
                                  & ( select2('Heap_0',X8,inv) = X9 ) )
                                | ( true_1 != select2('Heap_0',X8,allocated) )
                                | ( nullObject = X8 )
                                | ( true_1 = select2('Heap',X8,allocated) ) )
                              & ( typeof(X8) = X9 ) )
                          & ( select2('Heap_0',this,sharingMode) = 'SharingMode_Unshared' )
                          & ( X4 = X5 )
                          & ( X3 = X6 )
                          & ( 'System_Object' = select2('Heap_0',this,inv) )
                          & ( ( true_1 != x(select2('Heap_0',X5,inv),X6) )
                            | ( select2('Heap_0',X5,localinv) = 'BaseClass'(X6) )
                            | ( 'PeerGroupPlaceholder' = X6 ) )
                          & ( select2('Heap_0',this,localinv) = X1 )
                          & ( select2('Heap_0',this,allocated) = true_1 )
                          & ( 'IsHeap'('Heap_0') = true_1 )
                          & ( this != nullObject ) )
                        | ( this = nullObject ) ) ) )
                  & ( select2('Heap',this,localinv) = X1 )
                  & ( 'System_Object' = select2('Heap',this,inv) )
                  & ( ( select2('Heap',X4,localinv) = 'BaseClass'(X3) )
                    | ( x(select2('Heap',X4,inv),X3) != true_1 )
                    | ( X3 = 'PeerGroupPlaceholder' ) )
                  & ( 'PeerGroupPlaceholder' = X3 )
                  & ( this = X4 )
                  & ! [X7: $int] :
                      ( ( select2('Heap',X7,ownerRef) != this )
                      | ( this = X7 ) )
                  & ( 'BeingConstructed' = this )
                  & ( 'PurityAxiomsCanBeAssumed' = true_1 )
                  & ( true_1 = 'IsNotNull'(this,'Factorial') )
                  & ( true_1 = select2('Heap',this,allocated) )
                  & ( 'IsHeap'('Heap') = true_1 ) ) ) )
          & ( X3 = select2('Heap',this,ownerFrame) ) ) ),
    inference(ennf_transformation,[],[f30]) ).

tff(f32,plain,
    ? [X1: $int,X2: $int,X0: $int] :
      ( ( typeof(this) = X1 )
      & ? [X3: $int,X4: $int] :
          ( ( X3 = select2('Heap',this,ownerFrame) )
          & ( X4 = select2('Heap',this,ownerRef) )
          & ? [X6: $int,X5: $int] :
              ( ( select2('Heap_0',this,ownerFrame) = X6 )
              & ( ( entry_correct = true_1 )
                | ( ( true_1 = select2('Heap',this,allocated) )
                  & ( 'IsHeap'('Heap') = true_1 )
                  & ( ( select2('Heap',X4,localinv) = 'BaseClass'(X3) )
                    | ( x(select2('Heap',X4,inv),X3) != true_1 )
                    | ( X3 = 'PeerGroupPlaceholder' ) )
                  & ( ( block4284_correct = true_1 )
                    | ( ( ( ! [X13: $int,X12: $int] :
                            ? [X14: $int,X15: $int] :
                              ( ( select2('Heap',X13,ownerFrame) = X15 )
                              & ( select2('Heap',X13,ownerRef) = X14 )
                              & ( ( true_1 != select2('Heap',X13,allocated) )
                                | ( select2('Heap_0',X13,X12) = select2('Heap',X13,X12) )
                                | ( nullObject = X13 )
                                | ( ( 'PeerGroupPlaceholder' != X15 )
                                  & ( 'BaseClass'(X15) != select2('Heap',X14,localinv) )
                                  & ( true_1 = x(select2('Heap',X14,inv),X15) ) )
                                | ( ( this = X13 )
                                  & ( true_1 = x('System_Object','DeclType'(X12)) ) )
                                | ( true_1 != 'IncludeInMainFrameCondition'(X12) ) ) )
                          & ( select2('Heap_0',this,localinv) = X1 )
                          & ( 'IsHeap'('Heap_0') = true_1 )
                          & ! [X10: $int] :
                            ? [X11: $int] :
                              ( ( ( select2('Heap',X11,exposeVersion) != select2('Heap_0',X11,exposeVersion) )
                                | ( select2('Heap_0',X10,'FirstConsistentOwner') = X11 ) )
                              & ( select2('Heap',X10,'FirstConsistentOwner') = X11 ) )
                          & ( X4 = X5 )
                          & ( select2('Heap_0',this,sharingMode) = 'SharingMode_Unshared' )
                          & ( ( ( this != nullObject )
                              & ( ( select2('Heap_0',this,inv) != 'System_Object' )
                                | ( ( select2('Heap_0',this,localinv) = X1 )
                                  & ( 'System_Object' = select2('Heap_0',this,inv) )
                                  & ( ? [X31: $int] :
                                      ! [X32: $int] :
                                        ( ( ( nullObject != X31 )
                                          & ( 'Factorial' = select2('Heap_0',X31,ownerFrame) )
                                          & ( true_1 = select2('Heap_0',X31,allocated) )
                                          & ( ( select2('Heap_0',X31,inv) != X32 )
                                            | ( select2('Heap_0',X31,localinv) != X32 ) )
                                          & ( this = select2('Heap_0',X31,ownerRef) ) )
                                        | ( typeof(X31) != X32 ) )
                                    | ( ( 'Heap_1' = store2('Heap_0',this,inv,'Factorial') )
                                      & ! [X21: $int] :
                                        ? [X22: $int] :
                                          ( ( ( true_1 != select2('Heap_0',X21,allocated) )
                                            | ( nullObject = X21 )
                                            | ( ( select2('Heap_0',X21,localinv) = X22 )
                                              & ( select2('Heap_0',X21,inv) = X22 ) )
                                            | ( this != select2('Heap_0',X21,ownerRef) )
                                            | ( 'Factorial' != select2('Heap_0',X21,ownerFrame) ) )
                                          & ( typeof(X21) = X22 ) )
                                      & ( true_1 != 'ReallyLastGeneratedExit_correct' )
                                      & ( ( ! [X27: $int,X28: $int] :
                                            ? [X30: $int,X29: $int] :
                                              ( ( select2('Heap',X28,ownerRef) = X29 )
                                              & ( select2('Heap',X28,ownerFrame) = X30 )
                                              & ( ( true_1 != select2('Heap',X28,allocated) )
                                                | ( nullObject = X28 )
                                                | ( ( select2('Heap',X29,localinv) != 'BaseClass'(X30) )
                                                  & ( true_1 = x(select2('Heap',X29,inv),X30) )
                                                  & ( 'PeerGroupPlaceholder' != X30 ) )
                                                | ( select2('Heap',X28,X27) = select2('Heap_1',X28,X27) )
                                                | ( true_1 != 'IncludeInMainFrameCondition'(X27) )
                                                | ( ( true_1 = x('Factorial','DeclType'(X27)) )
                                                  & ( this = X28 ) ) ) )
                                          & ( ( ( select2('Heap_1',this,sharingMode) = 'SharingMode_Unshared' )
                                              & ( ( X2 != X3 )
                                                | ( ( X2 = X3 )
                                                  & ( ( select2('Heap_1',this,inv) != 'Factorial' )
                                                    | ( ( true_1 = x(select2('Heap_1',X0,inv),X2) )
                                                      & ( select2('Heap_1',X0,localinv) != 'BaseClass'(X2) )
                                                      & ( 'PeerGroupPlaceholder' != X2 ) )
                                                    | ( select2('Heap_1',this,localinv) != X1 ) )
                                                  & ( X0 = X4 ) )
                                                | ( X0 != X4 ) ) )
                                            | ( select2('Heap_1',this,sharingMode) != 'SharingMode_Unshared' ) ) )
                                        | ? [X23: $int,X24: $int] :
                                          ! [X25: $int,X26: $int] :
                                            ( ( ( ( true_1 != x('Factorial','DeclType'(X23)) )
                                                | ( this != X24 ) )
                                              & ( true_1 = 'IncludeInMainFrameCondition'(X23) )
                                              & ( true_1 = select2('Heap',X24,allocated) )
                                              & ( nullObject != X24 )
                                              & ( ( 'PeerGroupPlaceholder' = X26 )
                                                | ( true_1 != x(select2('Heap',X25,inv),X26) )
                                                | ( select2('Heap',X25,localinv) = 'BaseClass'(X26) ) )
                                              & ( select2('Heap',X24,X23) != select2('Heap_1',X24,X23) ) )
                                            | ( select2('Heap',X24,ownerFrame) != X26 )
                                            | ( select2('Heap',X24,ownerRef) != X25 ) )
                                        | ( 'ReallyLastGeneratedExit_correct' = true_1 ) )
                                      & ( 'IsHeap'('Heap_1') = true_1 ) ) ) )
                                | ( select2('Heap_0',this,localinv) != X1 ) ) )
                            | ( this = nullObject ) )
                          & ( this != nullObject )
                          & ( select2('Heap_0',this,allocated) = true_1 )
                          & ( 'HeapSucc'('Heap','Heap_0') = true_1 )
                          & ! [X17: $int] :
                            ? [X18: $int] :
                              ( ( ( 'PeerGroupPlaceholder' = X18 )
                                | ( ( select2('Heap_0',X17,ownerRef) = select2('Heap',X17,ownerRef) )
                                  & ( select2('Heap_0',X17,ownerFrame) = X18 ) )
                                | ( true_1 != select2('Heap',X17,allocated) ) )
                              & ( select2('Heap',X17,ownerFrame) = X18 ) )
                          & ! [X19: $int] :
                              ( ( true_1 != select2('Heap',X19,allocated) )
                              | ( true_1 = select2('Heap_0',X19,allocated) ) )
                          & ( ( true_1 != x(select2('Heap_0',X5,inv),X6) )
                            | ( select2('Heap_0',X5,localinv) = 'BaseClass'(X6) )
                            | ( 'PeerGroupPlaceholder' = X6 ) )
                          & ( 'System_Object' = select2('Heap_0',this,inv) )
                          & ( ( select2('Heap_0','BeingConstructed','NonNullFieldsAreInitialized') = true_1 )
                          <=> ( select2('Heap','BeingConstructed','NonNullFieldsAreInitialized') = true_1 ) )
                          & ! [X8: $int] :
                            ? [X9: $int] :
                              ( ( typeof(X8) = X9 )
                              & ( ( nullObject = X8 )
                                | ( true_1 != select2('Heap_0',X8,allocated) )
                                | ( ( select2('Heap_0',X8,localinv) = X9 )
                                  & ( select2('Heap_0',X8,inv) = X9 ) )
                                | ( true_1 = select2('Heap',X8,allocated) ) ) )
                          & ( X3 = X6 )
                          & ! [X20: $int] :
                              ( ( this = X20 )
                              | ( select2('Heap_0',X20,sharingMode) = select2('Heap',X20,sharingMode) ) )
                          & ! [X16: $int] :
                              ( ( true_1 != select2('Heap',X16,allocated) )
                              | ( this = X16 )
                              | ( ( select2('Heap',X16,inv) = select2('Heap_0',X16,inv) )
                                & ( select2('Heap',X16,localinv) = select2('Heap_0',X16,localinv) ) ) ) )
                        | ( this = nullObject )
                        | ( block4301_correct = true_1 ) )
                      & ( true_1 != block4301_correct ) ) )
                  & ( 'System_Object' = select2('Heap',this,inv) )
                  & ( select2('Heap',this,localinv) = X1 )
                  & ( true_1 != block4284_correct )
                  & ! [X7: $int] :
                      ( ( select2('Heap',X7,ownerRef) != this )
                      | ( this = X7 ) )
                  & ( 'PurityAxiomsCanBeAssumed' = true_1 )
                  & ( 'PeerGroupPlaceholder' = X3 )
                  & ( this = X4 )
                  & ( 'BeingConstructed' = this )
                  & ( true_1 = 'IsNotNull'(this,'Factorial') ) ) )
              & ( true_1 != entry_correct )
              & ( select2('Heap_0',this,ownerRef) = X5 ) ) )
      & ( select2('Heap_1',this,ownerFrame) = X2 )
      & ( select2('Heap_1',this,ownerRef) = X0 ) ),
    inference(flattening,[],[f31]) ).

tff(f33,plain,
    ? [X1: $int,X0: $int] :
      ( ( 'BaseClass'('Factorial') = X0 )
      & ( 'BaseClass'('System_String') = X1 )
      & ! [X152: $int,X153: $int] :
        ? [X154: $int] :
          ( ( ( $less(X154,$sum(0,$uminus(X152)))
              & ~ $less(X154,0) )
            | $less(X153,0)
            | ~ $less(X152,0) )
          & ( x_2(X153,X152) = X154 ) )
      & ! [X242: $int,X243: $int,X241: $int,X240: $int] :
          ( ( true_1 != 'IsHeap'(X240) )
          | ( true_1 = 'Is'(select2(X240,X241,'AsRefField'(X243,X242)),X242) ) )
      & ( 'Factorial' = 'AsDirectSubClass'('Factorial',X0) )
      & ! [X90: $int,X91: $int] : ( 'Factorial_recursiveFac_System_Int32'(X90,X91) = 'Factorial_recursiveFac_System_Int32_1'(X91) )
      & ( true_1 = 'IsValueType'('System_Int32') )
      & ! [X177: $int,X178: $int] :
          ( ( x_2(X177,X178) = x_2($sum(X178,X177),X178) )
          | $less(X178,0)
          | $less(X177,0) )
      & ( 'System_IConvertible' = 'AsInterface'('System_IConvertible') )
      & ! [X362: $int,X363: $int,X364: $int,X361: $int] :
          ( ( X362 = X364 )
          | ( 'RefArrayGet'('RefArraySet'(X363,X362,X361),X364) = 'RefArrayGet'(X363,X364) ) )
      & ! [X318: $int,X319: $int,X317: $int] :
        ? [X320: $int] :
          ( ( select2(X317,X319,'AsPeerField'(X318)) = X320 )
          & ( ( ( select2(X317,X320,ownerRef) = select2(X317,X319,ownerRef) )
              & ( select2(X317,X320,ownerFrame) = select2(X317,X319,ownerFrame) ) )
            | ( nullObject = X320 )
            | ( true_1 != 'IsHeap'(X317) ) ) )
      & ! [X108: $int,X111: $int,X109: $int,X110: $int] :
          ( ( nullObject != select2(X111,X109,'AsNonNullRefField'(X108,X110)) )
          | ( true_1 != 'IsHeap'(X111) )
          | ( nullObject = X109 )
          | ( ( true_1 != select2(X111,'BeingConstructed','NonNullFieldsAreInitialized') )
            & ( 'BeingConstructed' = X109 ) ) )
      & ( 'System_String' = 'AsImmutable'('System_String') )
      & ! [X136: $int,X135: $int,X134: $int] :
          ( ( true_1 != x(X135,'AsDirectSubClass'(X136,X134)) )
          | ( 'OneClassDown'(X135,X134) = X136 ) )
      & ( true_1 = x('System_IComparable_1___System_String','System_Object') )
      & ( true_1 = x('System_IConvertible','System_Object') )
      & ( 'System_IComparable' = 'AsInterface'('System_IComparable') )
      & ( true_1 = x('System_Collections_IEnumerable','System_Collections_IEnumerable') )
      & ! [X176: $int] :
          ( ( true_1 = 'InRange'(X176,'System_Byte') )
        <=> ( $less(X176,256)
            & ~ $less(X176,0) ) )
      & ( true_1 != 'IsStaticField'(inv) )
      & ! [X22: $int] :
          ( ( $less(X22,65536)
            & ~ $less(X22,0) )
        <=> ( true_1 = 'InRange'(X22,'System_Char') ) )
      & ! [X127: $int,X128: $int] :
        ? [X129: $int] :
          ( ( x_2(X127,X128) = X129 )
          & ( ( ~ $less(X129,0)
              & $less(X129,X128) )
            | ~ $less(0,X128)
            | $less(X127,0) ) )
      & ! [X252: $int,X253: $int,X254: $int] : ( 'RefArrayGet'('RefArraySet'(X252,X253,X254),X253) = X254 )
      & ( true_1 != 'IsStaticField'(allocated) )
      & ! [X62: $int,X61: $int,X63: $int] :
          ( ( 'IfThenElse'(X63,X62,X61) = X62 )
          | ( true_1 != X63 ) )
      & ! [X251: $int,X250: $int,X249: $int] : ( 'IntArrayGet'('IntArraySet'(X250,X251,X249),X251) = X249 )
      & ( 'System_Object' = X1 )
      & ( 'System_ICloneable' = 'AsInterface'('System_ICloneable') )
      & ( true_1 = 'IncludedInModifiesStar'(exposeVersion) )
      & ( 'System_Collections_IEnumerable' = 'AsInterface'('System_Collections_IEnumerable') )
      & ( true_1 = 'IsValueType'('System_SByte') )
      & ( true_1 != 'IncludeInMainFrameCondition'(localinv) )
      & ( true_1 = 'IsMemberlessType'('System_Collections_IEnumerable') )
      & ! [X369: $int,X367: $int,X368: $int] :
        ? [X370: $int] :
          ( ( ( true_1 = x(typeof(X370),'ElementType'(typeof(X368))) )
            | ( true_1 != 'IsHeap'(X367) )
            | ( nullObject = X370 ) )
          & ( 'RefArrayGet'(select2(X367,X368,elements),X369) = X370 ) )
      & ! [X378: $int,X377: $int,X376: $int] :
        ? [X379: $int] :
          ( ( 'IntArray'(X378,X377) = X379 )
          & ( ( true_1 = x('System_Array',X376) )
            | ( X376 = X379 )
            | ( true_1 != x(X379,X376) ) ) )
      & ! [X80: $int,X79: $int] :
        ? [X81: $int] :
          ( ( or_1(X80,X79) = X81 )
          & ( ( ~ $less(X81,0)
              & ~ $less($sum(X80,X79),X81) )
            | $less(X80,0)
            | $less(X79,0) ) )
      & ! [X185: $int,X183: $int,X184: $int] :
          ( ( true_1 != 'IsAllocated'(X183,X184) )
          | ( true_1 = 'IsAllocated'(X183,'StructGet'(X184,X185)) ) )
      & $less(int_m2147483648,$sum(0,$uminus(100000)))
      & ( true_1 = x('System_IEquatable_1___System_String','System_Object') )
      & ( true_1 = 'IsValueType'('System_Int16') )
      & ! [X119: $int,X120: $int,X121: $int] :
          ( ( true_1 = select2(X120,select2(X120,X119,X121),allocated) )
          | ( true_1 != select2(X120,X119,allocated) )
          | ( true_1 != 'IsHeap'(X120) ) )
      & ( true_1 = 'IsValueType'('System_UInt32') )
      & ( true_1 = x('System_String','System_ICloneable') )
      & ( true_1 = x('System_IComparable_1___System_String','System_IComparable_1___System_String') )
      & ( true_1 = x('System_Type','System_Object') )
      & ! [X365: $int,X366: $int] : ( 'ElementType'('IntArray'(X366,X365)) = X366 )
      & ! [X356: $int,X358: $int,X357: $int] :
        ? [X360: $int,X359: $int] :
          ( ( 'AsInterface'(X358) = X359 )
          & ( ( true_1 = x(typeof(X356),X358) )
            | ( X358 != X359 )
            | ( X356 != X360 )
            | ( true_1 != x('UnboxedType'(X360),X359) ) )
          & ( 'Box'(X357,X356) = X360 ) )
      & ( true_1 != 'IncludeInMainFrameCondition'('FirstConsistentOwner') )
      & ( 'Factorial' = 'AsMutable'('Factorial') )
      & ! [X6: $int,X7: $int,X5: $int] :
          ( ( 'Rank'(X5) = X6 )
          | ( true_1 != x(typeof(X5),'IntArray'(X7,X6)) )
          | ( nullObject = X5 ) )
      & ! [X29: $int,X30: $int,X28: $int] :
        ? [X31: $int] :
          ( ( 'ValueArray'(X29,X30) = X31 )
          & ( ( true_1 = x('System_Array',X28) )
            | ( X28 = X31 )
            | ( true_1 != x(X31,X28) ) ) )
      & ( true_1 = 'IsNotNull'(stringLiteral0,'System_String') )
      & ( true_1 = x('System_IComparable','System_IComparable') )
      & ! [X211: $int,X210: $int,X209: $int,X207: $int,X208: $int] :
        ? [X212: $int] :
          ( ? [X213: $int] :
              ( ( ( ( select2(X208,X213,ownerRef) = X211 )
                  & ( select2(X208,X213,ownerFrame) = X209 ) )
                | ( true_1 != 'IsHeap'(X208) )
                | ( nullObject = X212 ) )
              & ( 'ElementProxy'(X212,X207) = X213 ) )
          & ( select2(X208,X211,'AsElementsRepField'(X210,X209,X207)) = X212 ) )
      & ( true_1 = 'IsValueType'('System_Int64') )
      & ( true_1 = 'IsMemberlessType'('System_IConvertible') )
      & $less(int_2147483647,int_4294967295)
      & ! [X118: $int] :
          ( ( $less(X118,32768)
            & ~ $less(X118,$sum(0,$uminus(32768))) )
        <=> ( true_1 = 'InRange'(X118,'System_Int16') ) )
      & ( true_1 = 'IsValueType'('System_IntPtr') )
      & ( true_1 = x('System_String','System_IConvertible') )
      & ( true_1 = x('System_String','System_IComparable') )
      & ( true_1 = 'IsValueType'('System_UIntPtr') )
      & ! [X188: $int,X189: $int] : ( 'ElementType'('RefArray'(X188,X189)) = X188 )
      & ( true_1 = x('System_Collections_Generic_IEnumerable_1___System_Char','System_Object') )
      & ! [X204: $int,X205: $int] :
          ( ( x_2(X204,X205) = x_2($sum(X204,X205),X205) )
          | $less(X204,0)
          | $less(X205,0) )
      & ! [X257: $int,X255: $int,X256: $int] :
          ( ( true_1 != x(X256,'RefArray'(X255,X257)) )
          | ( 'ArrayCategoryRef' = 'ArrayCategory'(X256) ) )
      & ( true_1 = 'IsMemberlessType'('System_IEquatable_1___System_String') )
      & ( true_1 = 'IsMemberlessType'('System_IComparable_1___System_String') )
      & ( 'System_Collections_Generic_IEnumerable_1___System_Char' = 'AsInterface'('System_Collections_Generic_IEnumerable_1___System_Char') )
      & ( true_1 = 'IsValueType'('System_Byte') )
      & ! [X25: $int,X24: $int] :
          ( ( ( 'AsMutable'(X25) = X25 )
            & ( true_1 != 'IsImmutable'(X25) ) )
          | ( true_1 != x(X25,'AsMutable'(X24)) ) )
      & ( true_1 != 'IsStaticField'(elements) )
      & ! [X267: $int] : ( 'ClassReprInv'('ClassRepr'(X267)) = X267 )
      & ( true_1 = 'IsValueType'('System_UInt64') )
      & ( true_1 = 'IsValueType'('System_UInt16') )
      & ! [X132: $int,X131: $int] :
        ? [X133: $int] :
          ( ( $sum(X132,$uminus(X131)) = X133 )
          & ( ( x_2(X133,X131) = x_2(X132,X131) )
            | $less(X131,0)
            | $less(X133,0) ) )
      & ! [X355: $int,X353: $int,X354: $int] :
          ( ( true_1 = 'System_String_Equals_System_String_System_String'(X355,X354,X353) )
        <=> ( true_1 = 'System_String_Equals_System_String'(X355,X354,X353) ) )
      & ! [X276: $int,X277: $int,X275: $int] : ( 'StructGet'('StructSet'(X276,X275,X277),X275) = X277 )
      & ! [X15: $int,X14: $int,X13: $int] :
          ( ( true_1 != 'InRange'(X14,X15) )
          | ( 'IntToInt'(X14,X13,X15) = X14 ) )
      & ( true_1 = 'IsMemberlessType'('System_IComparable') )
      & ! [X244: $int,X246: $int,X245: $int] :
          ( ( 'System_String_IsInterned_System_String_notnull'(X245,X244) = 'System_String_IsInterned_System_String_notnull'(X245,X246) )
          | ( true_1 != 'System_String_Equals_System_String_System_String'(X245,X246,X244) )
          | ( nullObject = X244 )
          | ( nullObject = X246 ) )
      & ! [X34: $int,X35: $int,X36: $int] :
          ( ( 'Rank'(X35) = X34 )
          | ( nullObject = X35 )
          | ( true_1 != x(typeof(X35),'NonNullRefArray'(X36,X34)) ) )
      & ! [X226: $int,X227: $int] :
        ? [X228: $int] :
          ( ( select2(X226,X227,'FirstConsistentOwner') = X228 )
          & ? [X230: $int,X232: $int,X229: $int,X231: $int] :
              ( ( select2(X226,X227,ownerFrame) = X232 )
              & ( select2(X226,X227,ownerRef) = X231 )
              & ( select2(X226,X228,ownerFrame) = X229 )
              & ( select2(X226,X228,ownerRef) = X230 )
              & ( ( ( true_1 = select2(X226,X228,allocated) )
                  & ( ( true_1 != x(select2(X226,X230,inv),X229) )
                    | ( 'PeerGroupPlaceholder' = X229 )
                    | ( 'BaseClass'(X229) = select2(X226,X230,localinv) ) )
                  & ( nullObject != X228 ) )
                | ( nullObject = X227 )
                | ( select2(X226,X231,localinv) = 'BaseClass'(X232) )
                | ( true_1 != x(select2(X226,X231,inv),X232) )
                | ( 'PeerGroupPlaceholder' = X232 )
                | ( true_1 != select2(X226,X227,allocated) )
                | ( true_1 != 'IsHeap'(X226) ) ) ) )
      & ! [X150: $int,X151: $int] :
          ( ( true_1 != 'Is'(X150,X151) )
          | ( 'As'(X150,X151) = X150 ) )
      & ( true_1 = x('System_Collections_IEnumerable','System_Object') )
      & ( ( true_1 != 'PurityAxiomsCanBeAssumed' )
        | ! [X334: $int,X333: $int] :
          ? [X335: $int] :
            ( ( 'Factorial_recursiveFac_System_Int32'(X334,X333) = X335 )
            & ( ( true_1 != 'IsHeap'(X334) )
              | ( ( ( 0 != X333 )
                  | ( 1 = X335 ) )
                & ( ( 0 = X333 )
                  | ( $product(X333,'Factorial_recursiveFac_System_Int32'(X334,$sum(X333,$uminus(1)))) = X335 ) ) ) ) ) )
      & ! [X344: $int,X343: $int] :
        ? [X345: $int] :
          ( ( true_1 = x(X345,X345) )
          & ( true_1 = x(X345,'System_Array') )
          & ( 'NonNullRefArray'(X343,X344) = X345 ) )
      & ! [X46: $int] :
          ( ( true_1 = 'InRange'(X46,'System_UInt64') )
        <=> ( ~ $less(int_18446744073709551615,X46)
            & ~ $less(X46,0) ) )
      & ( 'System_Object' = 'DeclType'(elements) )
      & ! [X160: $int,X161: $int] :
          ( ( true_1 = select2(X161,'ClassRepr'(X160),allocated) )
          | ( true_1 != 'IsHeap'(X161) ) )
      & $less(100000,int_2147483647)
      & ! [X156: $int,X157: $int,X155: $int] :
          ( ( 'Rank'(X155) = X157 )
          | ( nullObject = X155 )
          | ( true_1 != x(typeof(X155),'ValueArray'(X156,X157)) ) )
      & ( true_1 = x('System_IConvertible','System_IConvertible') )
      & ! [X266: $int] :
          ( ( ~ $less(X266,0)
            & $less(X266,65536) )
        <=> ( true_1 = 'InRange'(X266,'System_UInt16') ) )
      & ! [X239: $int,X238: $int] :
          ( ( ( 'AsImmutable'(X238) = X238 )
            & ( true_1 = 'IsImmutable'(X238) ) )
          | ( true_1 != x(X238,'AsImmutable'(X239)) ) )
      & ! [X285: $int,X284: $int,X283: $int] :
          ( ( ( true_1 = 'System_String_Equals_System_String_System_String'(X283,X284,X285) )
          <=> ( true_1 = 'StringEquals'(X284,X285) ) )
          & ( ( X284 != X285 )
            | ( true_1 = 'StringEquals'(X284,X285) ) )
          & ( ( true_1 = 'System_String_Equals_System_String_System_String'(X283,X284,X285) )
          <=> ( true_1 = 'StringEquals'(X285,X284) ) ) )
      & ! [X303: $int,X304: $int] :
          ( ( nullObject != 'BoxTester'(X303,X304) )
        <=> ( 'UnboxedType'(X303) = X304 ) )
      & ! [X65: $int,X66: $int,X64: $int] :
          ( ( true_1 = x('NonNullRefArray'(X65,X66),'NonNullRefArray'(X64,X66)) )
          | ( true_1 != x(X65,X64) ) )
      & ! [X295: $int,X294: $int,X293: $int] :
          ( ( true_1 != 'IsHeap'(X293) )
          | ( true_1 = 'InRange'('IntArrayGet'(select2(X293,X295,elements),X294),'ElementType'(typeof(X295))) ) )
      & ! [X9: $int,X8: $int,X10: $int] :
        ? [X11: $int,X12: $int] :
          ( ( 'RefArrayGet'(select2(X8,X10,elements),X9) = X11 )
          & ( 'ElementProxy'(X10,$sum(0,$uminus(1))) = X12 )
          & ( ( nullObject = X11 )
            | ( true_1 = 'IsImmutable'(typeof(X11)) )
            | ( ( select2(X8,X11,ownerRef) = select2(X8,X12,ownerRef) )
              & ( select2(X8,X12,ownerFrame) = select2(X8,X11,ownerFrame) ) )
            | ( true_1 != 'IsHeap'(X8) )
            | ( true_1 != x(typeof(X10),'System_Array') ) ) )
      & ! [X23: $int] : ( nullObject != 'ClassRepr'(X23) )
      & ( true_1 = x('System_IComparable','System_Object') )
      & ( true_1 != 'IsStaticField'(localinv) )
      & ! [X168: $int,X167: $int,X169: $int] :
        ? [X170: $int] :
          ( ( ( true_1 != x(X167,'NonNullRefArray'(X168,X169)) )
            | ( ( X167 != X168 )
              & ( 'NonNullRefArray'(X170,X169) = X167 )
              & ( true_1 = x(X170,X168) ) ) )
          & ( 'ElementType'(X167) = X170 ) )
      & ( true_1 = 'IsMemberlessType'('System_Collections_Generic_IEnumerable_1___System_Char') )
      & ! [X216: $int] : ~ $less('Rank'(X216),1)
      & ! [X330: $int,X331: $int] :
        ? [X332: $int] :
          ( ( true_1 = x(X332,X332) )
          & ( true_1 = x(X332,'System_Array') )
          & ( 'RefArray'(X330,X331) = X332 ) )
      & ! [X336: $int,X337: $int] :
          ( ( $less(X336,0)
            & $less(X337,0) )
          | ~ $less(and_1(X337,X336),0) )
      & ! [X42: $int] : ( shr(X42,0) = X42 )
      & ( true_1 = x('System_String','System_Collections_IEnumerable') )
      & ( true_1 != 'IncludeInMainFrameCondition'(inv) )
      & $less(int_m9223372036854775808,int_m2147483648)
      & ! [X321: $int,X322: $int] :
          ( ( 'Box'('Unbox'(X322),X322) = X322 )
          | ( nullObject = 'BoxTester'(X322,X321) ) )
      & ! [X145: $int] :
          ( ( true_1 = 'InRange'(X145,'System_Int64') )
        <=> ( ~ $less(int_9223372036854775807,X145)
            & ~ $less(X145,int_m9223372036854775808) ) )
      & ! [X82: $int,X84: $int,X83: $int] :
          ( ( 'ArrayCategoryNonNullRef' = 'ArrayCategory'(X82) )
          | ( true_1 != x(X82,'NonNullRefArray'(X83,X84)) ) )
      & ! [X297: $int,X296: $int] :
          ( ( true_1 = select2(X297,X296,allocated) )
          | ( true_1 != 'IsAllocated'(X297,X296) ) )
      & ( 'ArrayCategoryValue' != 'System_Int32' )
      & ( allocated != 'FirstConsistentOwner' )
      & ( 'ArrayCategoryValue' != 'System_IComparable_1___System_String' )
      & ( 'System_Int16' != 'System_UInt32' )
      & ( 'System_SByte' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( elements != 'System_Char' )
      & ( elements != 'System_IntPtr' )
      & ( 'System_Array' != 'System_Char' )
      & ( localinv != 'FirstConsistentOwner' )
      & ( 'ArrayCategoryValue' != 'System_UInt32' )
      & ( sharingMode != 'System_Collections_IEnumerable' )
      & ( 'System_Array' != 'System_Int64' )
      & ( exposeVersion != 'System_Byte' )
      & ( 'System_IConvertible' != 'System_IEquatable_1___System_String' )
      & ( 'NonNullFieldsAreInitialized' != 'System_IntPtr' )
      & ( exposeVersion != 'System_Int16' )
      & ( inv != 'System_SByte' )
      & ( ownerRef != 'Factorial' )
      & ( ownerRef != 'System_UInt16' )
      & ( allocated != stringLiteral0 )
      & ( 'System_UInt32' != 'System_IConvertible' )
      & ( 'SharingMode_LockProtected' != 'FirstConsistentOwner' )
      & ( localinv != 'ArrayCategoryRef' )
      & ( 'System_SByte' != 'System_IComparable' )
      & ( 'SharingMode_Unshared' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'ArrayCategoryValue' != 'System_Int64' )
      & ( ownerRef != 'System_Collections_IEnumerable' )
      & ( 'ArrayCategoryValue' != 'System_Int16' )
      & ( 'System_Boolean' != 'System_Int32' )
      & ( 'FirstConsistentOwner' != 'System_ICloneable' )
      & ( localinv != 'ArrayCategoryInt' )
      & ( exposeVersion != 'System_Boolean' )
      & ( 'System_Object' != 'System_Byte' )
      & ( 'System_Type' != 'System_IComparable_1___System_String' )
      & ( 'System_IntPtr' != 'System_IComparable' )
      & ( 'SharingMode_Unshared' != 'System_Int16' )
      & ( 'SharingMode_Unshared' != 'System_Object' )
      & ( 'SharingMode_LockProtected' != 'System_String' )
      & ( elements != 'System_Object' )
      & ( 'System_IComparable_1___System_String' != 'Factorial' )
      & ( inv != 'Factorial' )
      & ( 'System_UInt16' != 'System_Int64' )
      & ( ownerFrame != 'System_IntPtr' )
      & ( inv != 'System_Int64' )
      & ( 'ArrayCategoryInt' != 'System_UInt16' )
      & ( sharingMode != 'System_Int64' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Int32' )
      & ( allocated != 'System_Int64' )
      & ( 'System_IntPtr' != 'System_ICloneable' )
      & ( inv != 'NonNullFieldsAreInitialized' )
      & ( allocated != 'System_Array' )
      & ( 'System_Char' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( sharingMode != 'System_IComparable' )
      & ( 'System_Type' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( sharingMode != 'SharingMode_LockProtected' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Char' )
      & ( 'System_Type' != 'System_Int64' )
      & ( 'System_Boolean' != 'System_Type' )
      & ( 'ArrayCategoryInt' != stringLiteral0 )
      & ( 'ArrayCategoryNonNullRef' != 'System_UInt16' )
      & ( 'System_UInt16' != 'System_IEquatable_1___System_String' )
      & ( 'FirstConsistentOwner' != stringLiteral0 )
      & ( 'SharingMode_Unshared' != 'System_SByte' )
      & ( elements != 'System_UInt32' )
      & ( ownerFrame != stringLiteral0 )
      & ( 'PeerGroupPlaceholder' != 'System_Array' )
      & ( localinv != 'PeerGroupPlaceholder' )
      & ( 'System_Object' != 'System_IComparable' )
      & ( 'ArrayCategoryRef' != 'System_Byte' )
      & ( 'SharingMode_Unshared' != 'System_String' )
      & ( exposeVersion != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_Boolean' != 'System_IEquatable_1___System_String' )
      & ( 'System_Int16' != 'System_IComparable' )
      & ( 'System_Int16' != 'System_IntPtr' )
      & ( elements != 'System_Int32' )
      & ( 'System_String' != 'System_UInt16' )
      & ( allocated != 'System_Object' )
      & ( 'System_Boolean' != stringLiteral0 )
      & ( 'ArrayCategoryNonNullRef' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_SByte' != 'System_Collections_IEnumerable' )
      & ( 'SharingMode_LockProtected' != 'System_Object' )
      & ( localinv != 'System_UInt32' )
      & ( 'ArrayCategoryRef' != 'System_UIntPtr' )
      & ( 'SharingMode_Unshared' != 'System_Byte' )
      & ( 'NonNullFieldsAreInitialized' != 'System_IComparable' )
      & ( 'NonNullFieldsAreInitialized' != 'System_UInt64' )
      & ( 'System_Int32' != 'System_IComparable' )
      & ( 'System_Boolean' != 'System_Byte' )
      & ( sharingMode != 'System_IConvertible' )
      & ( 'SharingMode_Unshared' != ownerFrame )
      & ( exposeVersion != 'System_ICloneable' )
      & ( 'ArrayCategoryRef' != 'System_Char' )
      & ( 'System_IComparable' != 'Factorial' )
      & ( allocated != ownerFrame )
      & ( ownerFrame != 'System_Type' )
      & ( 'System_Type' != 'System_Char' )
      & ( 'System_Boolean' != 'System_Collections_IEnumerable' )
      & ( 'ArrayCategoryInt' != 'System_SByte' )
      & ( 'NonNullFieldsAreInitialized' != 'System_IConvertible' )
      & ( 'ArrayCategoryInt' != 'System_Byte' )
      & ( 'ArrayCategoryValue' != 'System_UInt16' )
      & ( elements != 'ArrayCategoryInt' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Char' )
      & ( 'System_Byte' != 'System_ICloneable' )
      & ( localinv != 'ArrayCategoryNonNullRef' )
      & ( 'ArrayCategoryRef' != 'NonNullFieldsAreInitialized' )
      & ( 'System_UInt16' != stringLiteral0 )
      & ( ownerRef != 'System_Char' )
      & ( 'System_SByte' != 'System_Int64' )
      & ( allocated != 'System_SByte' )
      & ( 'System_Byte' != 'System_IComparable' )
      & ( elements != 'NonNullFieldsAreInitialized' )
      & ( ownerRef != 'System_SByte' )
      & ( 'SharingMode_LockProtected' != 'System_ICloneable' )
      & ( sharingMode != 'System_UInt64' )
      & ( 'System_Boolean' != 'System_IConvertible' )
      & ( 'System_Boolean' != 'System_UInt64' )
      & ( 'System_Array' != 'System_Int32' )
      & ( allocated != 'SharingMode_LockProtected' )
      & ( 'PeerGroupPlaceholder' != 'System_Int16' )
      & ( 'System_Int64' != 'Factorial' )
      & ( 'ArrayCategoryRef' != 'System_Int16' )
      & ( exposeVersion != 'System_SByte' )
      & ( 'System_String' != 'System_IComparable' )
      & ( 'NonNullFieldsAreInitialized' != 'FirstConsistentOwner' )
      & ( ownerFrame != 'ArrayCategoryRef' )
      & ( inv != 'PeerGroupPlaceholder' )
      & ( sharingMode != 'System_SByte' )
      & ( sharingMode != 'System_Char' )
      & ( 'ArrayCategoryValue' != 'System_IEquatable_1___System_String' )
      & ( sharingMode != 'ArrayCategoryInt' )
      & ( 'System_Int32' != 'System_IComparable_1___System_String' )
      & ( 'System_Type' != stringLiteral0 )
      & ( 'PeerGroupPlaceholder' != 'System_UInt64' )
      & ( 'ArrayCategoryValue' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_Boolean' != 'System_Int16' )
      & ( localinv != 'Factorial' )
      & ( 'System_Collections_IEnumerable' != stringLiteral0 )
      & ( 'ArrayCategoryInt' != 'ArrayCategoryNonNullRef' )
      & ( elements != exposeVersion )
      & ( 'ArrayCategoryValue' != 'Factorial' )
      & ( inv != 'System_UInt16' )
      & ( 'System_Int32' != 'System_Int64' )
      & ( 'System_Int64' != stringLiteral0 )
      & ( 'SharingMode_LockProtected' != 'System_Collections_IEnumerable' )
      & ( 'System_Int16' != 'System_Int64' )
      & ( elements != 'SharingMode_Unshared' )
      & ( 'PeerGroupPlaceholder' != 'System_Int32' )
      & ( inv != 'System_Type' )
      & ( ownerRef != 'System_UInt64' )
      & ( 'ArrayCategoryInt' != 'NonNullFieldsAreInitialized' )
      & ( exposeVersion != 'ArrayCategoryNonNullRef' )
      & ( localinv != ownerFrame )
      & ( 'SharingMode_Unshared' != 'System_IConvertible' )
      & ( sharingMode != 'System_Array' )
      & ( 'System_Int16' != 'System_Collections_IEnumerable' )
      & ( 'SharingMode_LockProtected' != 'System_IComparable_1___System_String' )
      & ( 'PeerGroupPlaceholder' != 'System_Collections_IEnumerable' )
      & ( localinv != 'SharingMode_Unshared' )
      & ( 'System_Object' != 'System_IConvertible' )
      & ( localinv != 'System_String' )
      & ( ownerRef != 'System_UInt32' )
      & ( exposeVersion != stringLiteral0 )
      & ( 'System_Int16' != 'Factorial' )
      & ( 'System_Byte' != 'System_UIntPtr' )
      & ( 'NonNullFieldsAreInitialized' != 'System_SByte' )
      & ( 'System_Char' != 'Factorial' )
      & ( allocated != 'PeerGroupPlaceholder' )
      & ( 'ArrayCategoryRef' != 'System_IComparable_1___System_String' )
      & ( 'System_IComparable_1___System_String' != 'System_IComparable' )
      & ( inv != 'System_UInt64' )
      & ( 'SharingMode_LockProtected' != 'System_IEquatable_1___System_String' )
      & ( 'ArrayCategoryValue' != 'System_Collections_IEnumerable' )
      & ( 'System_UInt32' != 'System_IntPtr' )
      & ( elements != 'System_IComparable_1___System_String' )
      & ( allocated != 'System_UInt64' )
      & ( 'System_Char' != 'System_IComparable_1___System_String' )
      & ( inv != 'System_Array' )
      & ( 'System_Array' != 'System_Int16' )
      & ( sharingMode != 'System_Int32' )
      & ( 'System_UIntPtr' != 'System_IConvertible' )
      & ( 'System_Boolean' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_Char' != stringLiteral0 )
      & ( elements != 'System_IEquatable_1___System_String' )
      & ( 'System_Byte' != 'System_UInt32' )
      & ( localinv != 'System_Array' )
      & ( localinv != sharingMode )
      & ( 'FirstConsistentOwner' != 'System_IntPtr' )
      & ( 'SharingMode_Unshared' != 'System_UInt32' )
      & ( 'System_Int64' != 'System_UIntPtr' )
      & ( inv != 'ArrayCategoryInt' )
      & ( exposeVersion != 'System_Array' )
      & ( 'ArrayCategoryNonNullRef' != 'System_IComparable' )
      & ( 'System_Int64' != 'System_IntPtr' )
      & ( allocated != 'System_ICloneable' )
      & ( ownerRef != 'ArrayCategoryRef' )
      & ( 'System_Int16' != 'System_IEquatable_1___System_String' )
      & ( localinv != 'System_UIntPtr' )
      & ( 'ArrayCategoryValue' != 'FirstConsistentOwner' )
      & ( 'ArrayCategoryValue' != 'System_SByte' )
      & ( sharingMode != 'System_IComparable_1___System_String' )
      & ( 'System_Int32' != 'System_ICloneable' )
      & ( 'SharingMode_Unshared' != 'System_IComparable_1___System_String' )
      & ( 'SharingMode_LockProtected' != 'ArrayCategoryNonNullRef' )
      & ( 'System_UInt16' != 'System_ICloneable' )
      & ( 'PeerGroupPlaceholder' != 'FirstConsistentOwner' )
      & ( 'System_IComparable_1___System_String' != 'System_Collections_IEnumerable' )
      & ( 'System_Char' != 'System_IConvertible' )
      & ( ownerFrame != 'Factorial' )
      & ( exposeVersion != 'SharingMode_LockProtected' )
      & ( 'SharingMode_Unshared' != 'System_Collections_IEnumerable' )
      & ( 'SharingMode_LockProtected' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_UIntPtr' != stringLiteral0 )
      & ( 'FirstConsistentOwner' != 'System_Collections_IEnumerable' )
      & ( sharingMode != ownerRef )
      & ( 'PeerGroupPlaceholder' != 'NonNullFieldsAreInitialized' )
      & ( 'System_UInt16' != 'System_UIntPtr' )
      & ( localinv != 'System_UInt16' )
      & ( 'SharingMode_Unshared' != 'ArrayCategoryNonNullRef' )
      & ( 'System_IConvertible' != 'System_IComparable' )
      & ( exposeVersion != 'FirstConsistentOwner' )
      & ( 'ArrayCategoryRef' != 'FirstConsistentOwner' )
      & ( 'System_UIntPtr' != 'System_IntPtr' )
      & ( ownerFrame != 'System_String' )
      & ( 'System_UIntPtr' != 'System_IComparable_1___System_String' )
      & ( 'ArrayCategoryValue' != 'System_Char' )
      & ( localinv != 'System_IComparable' )
      & ( allocated != 'System_UIntPtr' )
      & ( 'System_Int32' != 'System_Collections_IEnumerable' )
      & ( 'System_SByte' != 'System_UIntPtr' )
      & ( ownerFrame != 'System_Char' )
      & ( allocated != 'ArrayCategoryRef' )
      & ( ownerFrame != 'System_UIntPtr' )
      & ( 'System_Int64' != 'System_IComparable' )
      & ( allocated != 'System_IComparable_1___System_String' )
      & ( 'Factorial' != 'System_Collections_IEnumerable' )
      & ( allocated != 'System_Type' )
      & ( 'System_ICloneable' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_Object' != 'System_UInt64' )
      & ( localinv != 'ArrayCategoryValue' )
      & ( 'System_UInt32' != 'System_Char' )
      & ( 'System_Boolean' != 'System_UInt32' )
      & ( ownerFrame != 'System_ICloneable' )
      & ( 'System_UInt64' != 'System_IEquatable_1___System_String' )
      & ( sharingMode != 'FirstConsistentOwner' )
      & ( ownerFrame != 'System_Int64' )
      & ( allocated != 'System_UInt16' )
      & ( 'System_Int16' != 'System_UInt16' )
      & ( allocated != 'System_IEquatable_1___System_String' )
      & ( 'System_Object' != 'System_IEquatable_1___System_String' )
      & ( 'ArrayCategoryInt' != 'System_UInt64' )
      & ( ownerRef != 'System_IConvertible' )
      & ( allocated != 'System_IConvertible' )
      & ( inv != 'SharingMode_LockProtected' )
      & ( 'FirstConsistentOwner' != 'System_UIntPtr' )
      & ( 'System_UInt16' != 'System_Collections_IEnumerable' )
      & ( 'System_Int32' != 'System_UInt32' )
      & ( 'System_UInt16' != 'System_IComparable_1___System_String' )
      & ( 'PeerGroupPlaceholder' != 'Factorial' )
      & ( elements != 'System_IConvertible' )
      & ( allocated != 'SharingMode_Unshared' )
      & ( 'System_Type' != 'System_String' )
      & ( inv != 'ArrayCategoryRef' )
      & ( 'ArrayCategoryNonNullRef' != 'System_IEquatable_1___System_String' )
      & ( elements != 'FirstConsistentOwner' )
      & ( 'System_UInt16' != 'System_Char' )
      & ( 'SharingMode_LockProtected' != 'System_Byte' )
      & ( 'System_Object' != 'System_String' )
      & ( elements != 'System_Byte' )
      & ( exposeVersion != 'System_IComparable_1___System_String' )
      & ( 'System_String' != 'System_IEquatable_1___System_String' )
      & ( 'System_Boolean' != 'System_IComparable_1___System_String' )
      & ( 'System_Array' != 'System_UInt32' )
      & ( 'System_Object' != 'System_UInt16' )
      & ( ownerRef != 'System_Int16' )
      & ( 'System_String' != 'FirstConsistentOwner' )
      & ( 'System_Array' != 'System_IComparable_1___System_String' )
      & ( 'ArrayCategoryValue' != stringLiteral0 )
      & ( 'ArrayCategoryValue' != 'NonNullFieldsAreInitialized' )
      & ( exposeVersion != 'System_UIntPtr' )
      & ( 'System_Int32' != 'System_Char' )
      & ( localinv != 'NonNullFieldsAreInitialized' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_IComparable' != stringLiteral0 )
      & ( inv != 'ArrayCategoryValue' )
      & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_Collections_IEnumerable' )
      & ( 'System_Object' != 'FirstConsistentOwner' )
      & ( 'ArrayCategoryRef' != 'System_Type' )
      & ( 'System_Int32' != 'System_UInt64' )
      & ( ownerFrame != 'System_Int16' )
      & ( 'System_Type' != 'System_UInt32' )
      & ( 'System_Byte' != 'System_IComparable_1___System_String' )
      & ( 'System_String' != 'System_Int64' )
      & ( 'System_String' != 'System_IntPtr' )
      & ( 'System_Type' != 'System_UInt64' )
      & ( exposeVersion != 'SharingMode_Unshared' )
      & ( 'ArrayCategoryInt' != 'System_UIntPtr' )
      & ( ownerRef != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'ArrayCategoryInt' != 'System_Int16' )
      & ( elements != localinv )
      & ( 'ArrayCategoryNonNullRef' != 'System_ICloneable' )
      & ( 'System_UInt64' != 'System_IComparable_1___System_String' )
      & ( 'PeerGroupPlaceholder' != 'System_String' )
      & ( 'ArrayCategoryInt' != 'System_IConvertible' )
      & ( 'System_String' != 'System_UInt32' )
      & ( 'SharingMode_Unshared' != 'System_UIntPtr' )
      & ( 'System_Type' != 'System_Byte' )
      & ( 'System_Array' != 'System_UIntPtr' )
      & ( 'SharingMode_Unshared' != 'System_Boolean' )
      & ( elements != ownerFrame )
      & ( inv != 'System_Object' )
      & ( inv != 'SharingMode_Unshared' )
      & ( 'ArrayCategoryRef' != 'System_UInt32' )
      & ( 'System_SByte' != 'System_IComparable_1___System_String' )
      & ( 'System_UIntPtr' != 'System_IEquatable_1___System_String' )
      & ( 'SharingMode_Unshared' != 'NonNullFieldsAreInitialized' )
      & ( 'SharingMode_LockProtected' != 'System_Boolean' )
      & ( allocated != exposeVersion )
      & ( localinv != 'System_IConvertible' )
      & ( 'PeerGroupPlaceholder' != 'System_IComparable_1___System_String' )
      & ( 'System_Array' != 'System_SByte' )
      & ( allocated != 'System_Boolean' )
      & ( 'System_Byte' != stringLiteral0 )
      & ( 'ArrayCategoryInt' != 'System_IComparable' )
      & ( 'ArrayCategoryNonNullRef' != 'FirstConsistentOwner' )
      & ( 'System_Byte' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_String' != 'System_IComparable_1___System_String' )
      & ( allocated != 'NonNullFieldsAreInitialized' )
      & ( 'System_Int64' != 'System_ICloneable' )
      & ( 'System_Array' != 'System_Type' )
      & ( ownerRef != 'System_Int64' )
      & ( 'System_Array' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( exposeVersion != 'System_IEquatable_1___System_String' )
      & ( 'SharingMode_Unshared' != 'System_Int64' )
      & ( localinv != ownerRef )
      & ( 'PeerGroupPlaceholder' != 'System_Byte' )
      & ( sharingMode != 'System_UInt16' )
      & ( elements != ownerRef )
      & ( 'SharingMode_LockProtected' != 'System_Int16' )
      & ( 'System_IEquatable_1___System_String' != 'System_Collections_IEnumerable' )
      & ( 'FirstConsistentOwner' != 'System_IComparable' )
      & ( exposeVersion != 'ArrayCategoryValue' )
      & ( 'System_IEquatable_1___System_String' != 'Factorial' )
      & ( ownerFrame != 'System_Int32' )
      & ( 'System_Array' != 'Factorial' )
      & ( localinv != 'System_SByte' )
      & ( inv != stringLiteral0 )
      & ( 'FirstConsistentOwner' != 'System_SByte' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Object' )
      & ( exposeVersion != 'System_Char' )
      & ( 'System_UInt16' != 'System_IntPtr' )
      & ( 'System_Object' != 'NonNullFieldsAreInitialized' )
      & ( 'PeerGroupPlaceholder' != 'System_UInt32' )
      & ( 'System_SByte' != stringLiteral0 )
      & ( 'FirstConsistentOwner' != 'Factorial' )
      & ( 'System_Array' != 'System_UInt16' )
      & ( 'SharingMode_LockProtected' != 'System_UInt64' )
      & ( 'System_Type' != 'System_ICloneable' )
      & ( 'System_SByte' != 'System_Int32' )
      & ( 'ArrayCategoryValue' != 'ArrayCategoryNonNullRef' )
      & ( 'System_SByte' != 'System_UInt64' )
      & ( 'ArrayCategoryValue' != 'ArrayCategoryRef' )
      & ( 'System_Char' != 'System_UIntPtr' )
      & ( 'ArrayCategoryInt' != 'System_ICloneable' )
      & ( allocated != 'ArrayCategoryValue' )
      & ( 'System_UIntPtr' != 'Factorial' )
      & ( inv != 'System_ICloneable' )
      & ( 'System_SByte' != 'System_IConvertible' )
      & ( exposeVersion != 'System_Object' )
      & ( ownerFrame != 'System_IComparable_1___System_String' )
      & ( 'ArrayCategoryInt' != 'System_Collections_IEnumerable' )
      & ( 'System_IEquatable_1___System_String' != 'System_IComparable_1___System_String' )
      & ( 'ArrayCategoryNonNullRef' != 'System_UIntPtr' )
      & ( 'ArrayCategoryRef' != 'System_SByte' )
      & ( localinv != 'System_Object' )
      & ( 'System_Array' != 'System_Byte' )
      & ( 'System_SByte' != 'System_Byte' )
      & ( 'System_Object' != 'System_UInt32' )
      & ( 'FirstConsistentOwner' != 'System_UInt64' )
      & ( 'ArrayCategoryInt' != 'System_UInt32' )
      & ( ownerRef != 'System_UIntPtr' )
      & ( sharingMode != 'PeerGroupPlaceholder' )
      & ( ownerRef != 'System_IntPtr' )
      & ( allocated != 'System_Byte' )
      & ( 'PeerGroupPlaceholder' != 'System_UIntPtr' )
      & ( 'SharingMode_LockProtected' != stringLiteral0 )
      & ( elements != 'System_UInt64' )
      & ( 'System_Char' != 'System_Collections_IEnumerable' )
      & ( 'System_Int32' != 'System_UIntPtr' )
      & ( 'PeerGroupPlaceholder' != 'System_Boolean' )
      & ( 'System_Type' != 'FirstConsistentOwner' )
      & ( allocated != 'ArrayCategoryNonNullRef' )
      & ( 'System_UInt32' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( exposeVersion != 'Factorial' )
      & ( 'SharingMode_LockProtected' != 'NonNullFieldsAreInitialized' )
      & ( 'System_Type' != 'System_Collections_IEnumerable' )
      & ( elements != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_Object' != 'System_IComparable_1___System_String' )
      & ( 'System_Int32' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( sharingMode != 'System_IEquatable_1___System_String' )
      & ( ownerFrame != 'System_IEquatable_1___System_String' )
      & ( 'SharingMode_LockProtected' != 'System_UInt16' )
      & ( 'System_IComparable_1___System_String' != stringLiteral0 )
      & ( 'FirstConsistentOwner' != 'System_UInt16' )
      & ( 'ArrayCategoryValue' != 'System_String' )
      & ( 'System_IEquatable_1___System_String' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( ownerFrame != 'System_Byte' )
      & ( 'System_Object' != 'System_SByte' )
      & ( 'ArrayCategoryValue' != 'System_IntPtr' )
      & ( elements != 'System_SByte' )
      & ( 'System_Char' != 'System_IComparable' )
      & ( 'NonNullFieldsAreInitialized' != 'System_String' )
      & ( 'System_UInt16' != 'Factorial' )
      & ( 'ArrayCategoryRef' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( exposeVersion != 'System_Int32' )
      & ( 'ArrayCategoryValue' != 'System_UInt64' )
      & ( exposeVersion != 'System_Collections_IEnumerable' )
      & ( 'SharingMode_LockProtected' != 'ArrayCategoryValue' )
      & ( 'System_UIntPtr' != 'System_Collections_IEnumerable' )
      & ( 'System_Byte' != 'System_IEquatable_1___System_String' )
      & ( 'System_IEquatable_1___System_String' != stringLiteral0 )
      & ( elements != 'System_Int16' )
      & ( 'System_Boolean' != 'Factorial' )
      & ( inv != 'ArrayCategoryNonNullRef' )
      & ( localinv != 'System_Boolean' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Type' )
      & ( 'FirstConsistentOwner' != 'System_Int32' )
      & ( sharingMode != 'System_String' )
      & ( 'ArrayCategoryValue' != 'ArrayCategoryInt' )
      & ( 'PeerGroupPlaceholder' != 'System_Object' )
      & ( 'System_String' != 'System_UIntPtr' )
      & ( 'ArrayCategoryInt' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( allocated != 'Factorial' )
      & ( 'ArrayCategoryRef' != 'System_UInt64' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Int32' )
      & ( 'System_Array' != 'System_IConvertible' )
      & ( inv != ownerFrame )
      & ( allocated != 'System_Int32' )
      & ( 'ArrayCategoryInt' != 'Factorial' )
      & ( 'SharingMode_Unshared' != 'System_IntPtr' )
      & ( inv != 'System_IComparable_1___System_String' )
      & ( ownerRef != 'ArrayCategoryNonNullRef' )
      & ( 'ArrayCategoryInt' != 'ArrayCategoryRef' )
      & ( allocated != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_Int16' != 'System_Char' )
      & ( ownerFrame != 'System_Object' )
      & ( 'System_Object' != 'System_UIntPtr' )
      & ( 'System_Byte' != 'System_Collections_IEnumerable' )
      & ( 'System_Boolean' != 'System_SByte' )
      & ( sharingMode != 'SharingMode_Unshared' )
      & ( 'System_IntPtr' != 'Factorial' )
      & ( ownerFrame != 'FirstConsistentOwner' )
      & ( 'System_IConvertible' != 'System_Collections_IEnumerable' )
      & ( 'SharingMode_Unshared' != 'System_ICloneable' )
      & ( ownerRef != stringLiteral0 )
      & ( 'ArrayCategoryRef' != 'System_UInt16' )
      & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'Factorial' )
      & ( 'System_Type' != 'System_Int16' )
      & ( inv != 'System_UInt32' )
      & ( ownerFrame != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_UInt32' != 'System_IComparable_1___System_String' )
      & ( 'FirstConsistentOwner' != 'System_Int64' )
      & ( 'ArrayCategoryRef' != 'Factorial' )
      & ( 'System_Int64' != 'System_IComparable_1___System_String' )
      & ( 'System_Array' != 'System_IEquatable_1___System_String' )
      & ( inv != exposeVersion )
      & ( sharingMode != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( allocated != 'System_String' )
      & ( allocated != 'System_Collections_IEnumerable' )
      & ( inv != 'System_Collections_IEnumerable' )
      & ( 'System_String' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'FirstConsistentOwner' != 'System_Int16' )
      & ( 'NonNullFieldsAreInitialized' != 'System_UInt16' )
      & ( 'System_Type' != 'Factorial' )
      & ( 'ArrayCategoryInt' != 'System_String' )
      & ( inv != 'System_IConvertible' )
      & ( 'System_String' != 'System_SByte' )
      & ( 'PeerGroupPlaceholder' != 'System_IConvertible' )
      & ( sharingMode != ownerFrame )
      & ( 'SharingMode_LockProtected' != 'System_IComparable' )
      & ( elements != 'System_Int64' )
      & ( 'ArrayCategoryInt' != 'System_IComparable_1___System_String' )
      & ( exposeVersion != 'PeerGroupPlaceholder' )
      & ( 'ArrayCategoryNonNullRef' != 'System_UInt32' )
      & ( inv != 'FirstConsistentOwner' )
      & ( 'SharingMode_Unshared' != 'ArrayCategoryInt' )
      & ( 'System_UInt32' != 'System_UInt64' )
      & ( 'System_Byte' != 'System_Int16' )
      & ( sharingMode != 'System_Byte' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Byte' )
      & ( ownerFrame != 'System_UInt64' )
      & ( ownerFrame != 'NonNullFieldsAreInitialized' )
      & ( 'System_Int16' != 'System_IComparable_1___System_String' )
      & ( 'SharingMode_Unshared' != 'Factorial' )
      & ( 'SharingMode_LockProtected' != 'System_Char' )
      & ( 'System_UInt32' != 'Factorial' )
      & ( sharingMode != 'ArrayCategoryNonNullRef' )
      & ( 'System_Type' != 'System_IntPtr' )
      & ( 'SharingMode_Unshared' != 'System_Char' )
      & ( 'ArrayCategoryInt' != 'System_Type' )
      & ( 'System_Int32' != 'System_IConvertible' )
      & ( 'PeerGroupPlaceholder' != 'System_Char' )
      & ( 'System_Object' != 'System_Collections_IEnumerable' )
      & ( 'System_ICloneable' != 'Factorial' )
      & ( elements != 'ArrayCategoryValue' )
      & ( 'System_SByte' != 'System_IntPtr' )
      & ( ownerFrame != 'System_SByte' )
      & ( 'System_Int64' != 'System_IConvertible' )
      & ( 'System_Byte' != 'System_Int32' )
      & ( 'SharingMode_LockProtected' != 'PeerGroupPlaceholder' )
      & ( ownerFrame != 'System_UInt32' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Int64' )
      & ( 'ArrayCategoryRef' != stringLiteral0 )
      & ( 'PeerGroupPlaceholder' != 'System_Int64' )
      & ( localinv != 'System_Char' )
      & ( 'PeerGroupPlaceholder' != 'System_IComparable' )
      & ( 'System_IEquatable_1___System_String' != 'System_IComparable' )
      & ( 'FirstConsistentOwner' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( allocated != 'System_Char' )
      & ( 'System_Array' != 'System_String' )
      & ( 'System_Int64' != 'System_UInt64' )
      & ( 'System_UInt64' != stringLiteral0 )
      & ( 'SharingMode_LockProtected' != 'System_Type' )
      & ( localinv != 'System_ICloneable' )
      & ( localinv != 'System_Int64' )
      & ( 'System_UIntPtr' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'SharingMode_LockProtected' != 'System_IntPtr' )
      & ( 'System_UInt32' != 'System_UIntPtr' )
      & ( inv != localinv )
      & ( exposeVersion != 'ArrayCategoryRef' )
      & ( exposeVersion != 'ArrayCategoryInt' )
      & ( 'ArrayCategoryRef' != 'System_Object' )
      & ( exposeVersion != 'System_Type' )
      & ( exposeVersion != 'System_UInt64' )
      & ( 'System_Array' != 'System_IntPtr' )
      & ( sharingMode != stringLiteral0 )
      & ( localinv != 'System_Int16' )
      & ( 'System_UIntPtr' != 'System_ICloneable' )
      & ( allocated != sharingMode )
      & ( 'PeerGroupPlaceholder' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( ownerRef != 'System_String' )
      & ( 'System_Boolean' != 'System_IntPtr' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Int16' )
      & ( 'ArrayCategoryInt' != 'FirstConsistentOwner' )
      & ( elements != stringLiteral0 )
      & ( 'System_Type' != 'System_IEquatable_1___System_String' )
      & ( 'SharingMode_LockProtected' != 'ArrayCategoryRef' )
      & ( ownerFrame != 'ArrayCategoryInt' )
      & ( 'System_Object' != 'System_Int16' )
      & ( elements != 'PeerGroupPlaceholder' )
      & ( exposeVersion != sharingMode )
      & ( exposeVersion != ownerFrame )
      & ( sharingMode != 'System_Boolean' )
      & ( 'System_Int64' != 'System_Char' )
      & ( 'System_ICloneable' != 'System_IComparable' )
      & ( elements != 'System_Array' )
      & ( 'System_Int16' != 'System_Int32' )
      & ( allocated != localinv )
      & ( ownerFrame != 'ArrayCategoryValue' )
      & ( allocated != ownerRef )
      & ( 'System_String' != 'System_Collections_IEnumerable' )
      & ( 'System_Type' != 'System_IComparable' )
      & ( 'System_SByte' != 'System_ICloneable' )
      & ( localinv != 'System_Byte' )
      & ( 'System_UInt64' != 'System_IntPtr' )
      & ( 'System_Array' != 'System_IComparable' )
      & ( allocated != 'System_UInt32' )
      & ( elements != 'ArrayCategoryRef' )
      & ( 'System_UInt64' != 'System_Char' )
      & ( 'System_Char' != 'System_IEquatable_1___System_String' )
      & ( 'System_Char' != 'System_IntPtr' )
      & ( 'System_Type' != 'NonNullFieldsAreInitialized' )
      & ( ownerRef != ownerFrame )
      & ( 'SharingMode_Unshared' != 'ArrayCategoryRef' )
      & ( 'FirstConsistentOwner' != 'System_IConvertible' )
      & ( 'ArrayCategoryRef' != 'System_IEquatable_1___System_String' )
      & ( 'System_Int16' != 'System_UInt64' )
      & ( sharingMode != 'System_Type' )
      & ( elements != 'ArrayCategoryNonNullRef' )
      & ( 'System_Byte' != 'System_Int64' )
      & ( 'SharingMode_Unshared' != 'SharingMode_LockProtected' )
      & ( 'ArrayCategoryValue' != 'System_Boolean' )
      & ( 'System_Byte' != 'System_Char' )
      & ( 'System_IConvertible' != 'Factorial' )
      & ( 'ArrayCategoryRef' != 'ArrayCategoryNonNullRef' )
      & ( localinv != 'System_IntPtr' )
      & ( 'System_IntPtr' != 'System_IEquatable_1___System_String' )
      & ( 'System_Int32' != 'System_IntPtr' )
      & ( 'ArrayCategoryValue' != 'System_ICloneable' )
      & ( 'System_String' != 'System_IConvertible' )
      & ( 'ArrayCategoryInt' != 'System_Array' )
      & ( 'System_String' != 'System_ICloneable' )
      & ( 'System_Array' != stringLiteral0 )
      & ( allocated != 'ArrayCategoryInt' )
      & ( exposeVersion != 'NonNullFieldsAreInitialized' )
      & ( 'System_IConvertible' != 'System_IComparable_1___System_String' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Byte' )
      & ( 'SharingMode_Unshared' != 'System_Type' )
      & ( 'System_String' != 'System_UInt64' )
      & ( localinv != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_Int16' != 'System_UIntPtr' )
      & ( elements != 'System_IComparable' )
      & ( localinv != 'System_IEquatable_1___System_String' )
      & ( 'ArrayCategoryRef' != 'System_ICloneable' )
      & ( 'SharingMode_LockProtected' != 'System_UInt32' )
      & ( 'ArrayCategoryNonNullRef' != 'System_UInt64' )
      & ( 'PeerGroupPlaceholder' != 'System_ICloneable' )
      & ( 'System_UInt64' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( ownerFrame != 'System_Collections_IEnumerable' )
      & ( 'System_Array' != 'System_UInt64' )
      & ( 'ArrayCategoryRef' != 'System_Collections_IEnumerable' )
      & ( 'SharingMode_Unshared' != 'System_UInt64' )
      & ( ownerRef != 'ArrayCategoryValue' )
      & ( 'System_UInt64' != 'System_IConvertible' )
      & ( sharingMode != 'System_IntPtr' )
      & ( 'ArrayCategoryRef' != 'System_Boolean' )
      & ( 'System_SByte' != 'System_IEquatable_1___System_String' )
      & ( allocated != 'System_Int16' )
      & ( localinv != 'System_Collections_IEnumerable' )
      & ( 'ArrayCategoryNonNullRef' != 'Factorial' )
      & ( localinv != 'SharingMode_LockProtected' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Int16' )
      & ( exposeVersion != ownerRef )
      & ( 'System_Type' != 'System_Int32' )
      & ( 'PeerGroupPlaceholder' != 'ArrayCategoryInt' )
      & ( 'System_ICloneable' != 'System_IComparable_1___System_String' )
      & ( 'System_Int16' != stringLiteral0 )
      & ( 'ArrayCategoryValue' != 'System_Byte' )
      & ( 'ArrayCategoryInt' != 'System_Object' )
      & ( inv != 'System_String' )
      & ( inv != 'System_Int16' )
      & ( ownerFrame != 'PeerGroupPlaceholder' )
      & ( elements != inv )
      & ( localinv != stringLiteral0 )
      & ( elements != 'System_UInt16' )
      & ( sharingMode != 'ArrayCategoryValue' )
      & ( 'System_Boolean' != 'FirstConsistentOwner' )
      & ( 'System_Char' != 'System_ICloneable' )
      & ( 'System_Object' != 'System_Int32' )
      & ( 'System_Array' != 'System_Object' )
      & ( ownerRef != 'System_IComparable_1___System_String' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Collections_IEnumerable' )
      & ( 'PeerGroupPlaceholder' != 'ArrayCategoryRef' )
      & ( exposeVersion != 'System_UInt32' )
      & ( 'System_Int32' != 'System_IEquatable_1___System_String' )
      & ( 'System_String' != 'System_Byte' )
      & ( 'System_IntPtr' != 'System_IComparable_1___System_String' )
      & ( 'System_String' != 'System_Int16' )
      & ( 'SharingMode_Unshared' != 'System_Int32' )
      & ( 'System_UInt32' != 'System_IEquatable_1___System_String' )
      & ( 'SharingMode_Unshared' != 'System_IEquatable_1___System_String' )
      & ( ownerFrame != 'System_Array' )
      & ( 'System_Array' != 'NonNullFieldsAreInitialized' )
      & ( 'System_Array' != 'System_Collections_IEnumerable' )
      & ( 'ArrayCategoryNonNullRef' != stringLiteral0 )
      & ( 'ArrayCategoryValue' != 'System_IComparable' )
      & ( 'System_Type' != 'System_UIntPtr' )
      & ( 'System_UInt32' != 'System_Int64' )
      & ( 'System_UInt16' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'SharingMode_Unshared' != 'FirstConsistentOwner' )
      & ( 'ArrayCategoryNonNullRef' != 'System_IntPtr' )
      & ( 'SharingMode_Unshared' != ownerRef )
      & ( 'System_Byte' != 'System_UInt16' )
      & ( 'System_Boolean' != 'System_UIntPtr' )
      & ( exposeVersion != 'System_IComparable' )
      & ( 'System_Int64' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'NonNullFieldsAreInitialized' != 'Factorial' )
      & ( elements != 'System_UIntPtr' )
      & ( 'System_UInt64' != 'System_UIntPtr' )
      & ( inv != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'SharingMode_Unshared' != stringLiteral0 )
      & ( inv != 'System_Boolean' )
      & ( inv != 'System_IComparable' )
      & ( 'System_Type' != 'System_UInt16' )
      & ( exposeVersion != 'System_IConvertible' )
      & ( 'System_String' != 'Factorial' )
      & ( 'System_IntPtr' != stringLiteral0 )
      & ( 'System_ICloneable' != 'System_IConvertible' )
      & ( ownerRef != 'FirstConsistentOwner' )
      & ( exposeVersion != 'System_IntPtr' )
      & ( 'System_Byte' != 'System_IConvertible' )
      & ( allocated != inv )
      & ( sharingMode != 'System_ICloneable' )
      & ( 'System_UInt64' != 'System_ICloneable' )
      & ( ownerRef != 'NonNullFieldsAreInitialized' )
      & ( 'System_Boolean' != 'System_Object' )
      & ( 'System_Object' != 'System_Type' )
      & ( inv != 'System_UIntPtr' )
      & ( 'ArrayCategoryRef' != 'System_Int32' )
      & ( sharingMode != 'NonNullFieldsAreInitialized' )
      & ( ownerRef != 'System_ICloneable' )
      & ( 'SharingMode_LockProtected' != 'System_Int64' )
      & ( 'System_Boolean' != 'System_UInt16' )
      & ( 'ArrayCategoryNonNullRef' != 'System_IComparable_1___System_String' )
      & ( elements != 'System_String' )
      & ( 'ArrayCategoryNonNullRef' != 'System_String' )
      & ( 'System_Array' != 'System_ICloneable' )
      & ( 'System_Object' != stringLiteral0 )
      & ( 'ArrayCategoryValue' != 'System_UIntPtr' )
      & ( 'ArrayCategoryRef' != 'System_IComparable' )
      & ( 'System_Int64' != 'System_Collections_IEnumerable' )
      & ( 'ArrayCategoryValue' != 'System_Object' )
      & ( 'System_Byte' != 'System_UInt64' )
      & ( 'System_UInt16' != 'System_UInt32' )
      & ( 'ArrayCategoryValue' != 'System_IConvertible' )
      & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != stringLiteral0 )
      & ( 'System_SByte' != 'System_Char' )
      & ( 'System_String' != stringLiteral0 )
      & ( 'System_UInt64' != 'Factorial' )
      & ( 'System_IConvertible' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( localinv != 'System_IComparable_1___System_String' )
      & ( 'SharingMode_Unshared' != 'System_Array' )
      & ( 'System_SByte' != 'Factorial' )
      & ( elements != sharingMode )
      & ( 'SharingMode_LockProtected' != 'ArrayCategoryInt' )
      & ( ownerFrame != 'ArrayCategoryNonNullRef' )
      & ( 'System_Array' != 'System_Boolean' )
      & ( localinv != exposeVersion )
      & ( 'System_UInt16' != 'System_IComparable' )
      & ( 'SharingMode_LockProtected' != 'System_IConvertible' )
      & ( ownerRef != 'System_Byte' )
      & ( 'NonNullFieldsAreInitialized' != 'System_UIntPtr' )
      & ( 'System_IComparable' != 'System_Collections_IEnumerable' )
      & ( 'NonNullFieldsAreInitialized' != stringLiteral0 )
      & ( 'SharingMode_LockProtected' != 'System_SByte' )
      & ( 'FirstConsistentOwner' != 'System_Char' )
      & ( 'System_String' != 'System_Int32' )
      & ( 'ArrayCategoryInt' != 'System_IntPtr' )
      & ( 'PeerGroupPlaceholder' != 'System_IEquatable_1___System_String' )
      & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_IComparable' )
      & ( ownerFrame != 'System_IConvertible' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Int64' )
      & ( exposeVersion != 'System_Int64' )
      & ( ownerRef != 'System_Object' )
      & ( elements != 'Factorial' )
      & ( 'FirstConsistentOwner' != 'System_UInt32' )
      & ( 'System_UIntPtr' != 'System_IComparable' )
      & ( elements != 'System_Collections_IEnumerable' )
      & ( sharingMode != 'ArrayCategoryRef' )
      & ( ownerRef != 'System_IEquatable_1___System_String' )
      & ( 'SharingMode_LockProtected' != 'System_Int32' )
      & ( 'System_Boolean' != 'NonNullFieldsAreInitialized' )
      & ( 'System_SByte' != 'System_Int16' )
      & ( 'System_Byte' != 'Factorial' )
      & ( 'PeerGroupPlaceholder' != 'System_Type' )
      & ( 'System_Array' != 'FirstConsistentOwner' )
      & ( sharingMode != 'Factorial' )
      & ( 'ArrayCategoryValue' != 'System_Array' )
      & ( inv != 'System_Char' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Boolean' )
      & ( 'System_ICloneable' != 'System_IEquatable_1___System_String' )
      & ( allocated != 'System_IComparable' )
      & ( ownerRef != 'System_Array' )
      & ( 'FirstConsistentOwner' != 'System_IEquatable_1___System_String' )
      & ( elements != 'System_ICloneable' )
      & ( 'System_UInt16' != 'System_IConvertible' )
      & ( 'System_UInt64' != 'System_Collections_IEnumerable' )
      & ( 'System_UInt32' != 'System_Collections_IEnumerable' )
      & ( exposeVersion != 'System_UInt16' )
      & ( 'PeerGroupPlaceholder' != 'System_SByte' )
      & ( 'ArrayCategoryNonNullRef' != 'System_IConvertible' )
      & ( 'System_UInt32' != 'System_IComparable' )
      & ( 'PeerGroupPlaceholder' != 'System_UInt16' )
      & ( ownerRef != 'System_Int32' )
      & ( 'NonNullFieldsAreInitialized' != 'System_UInt32' )
      & ( ownerRef != 'PeerGroupPlaceholder' )
      & ( exposeVersion != 'System_String' )
      & ( 'System_SByte' != 'System_UInt16' )
      & ( inv != sharingMode )
      & ( 'NonNullFieldsAreInitialized' != 'System_ICloneable' )
      & ( 'NonNullFieldsAreInitialized' != 'System_IEquatable_1___System_String' )
      & ( allocated != 'System_IntPtr' )
      & ( 'System_ICloneable' != stringLiteral0 )
      & ( 'NonNullFieldsAreInitialized' != 'System_Collections_IEnumerable' )
      & ( 'ArrayCategoryRef' != 'System_Array' )
      & ( 'System_Int64' != 'System_IEquatable_1___System_String' )
      & ( 'SharingMode_LockProtected' != ownerFrame )
      & ( inv != 'System_Byte' )
      & ( 'System_IntPtr' != 'System_IConvertible' )
      & ( 'ArrayCategoryInt' != 'System_Int32' )
      & ( 'System_Int16' != 'System_ICloneable' )
      & ( 'SharingMode_LockProtected' != ownerRef )
      & ( elements != 'System_Type' )
      & ( inv != 'System_IEquatable_1___System_String' )
      & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_IComparable_1___System_String' )
      & ( 'System_Object' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'SharingMode_Unshared' != 'System_IComparable' )
      & ( 'System_UInt64' != 'System_IComparable' )
      & ( 'System_String' != 'System_Char' )
      & ( 'FirstConsistentOwner' != 'System_IComparable_1___System_String' )
      & ( sharingMode != 'System_UInt32' )
      & ( 'System_UInt16' != 'System_UInt64' )
      & ( 'ArrayCategoryInt' != 'System_Boolean' )
      & ( 'System_Object' != 'System_Int64' )
      & ( 'System_Object' != 'Factorial' )
      & ( 'SharingMode_Unshared' != 'PeerGroupPlaceholder' )
      & ( sharingMode != 'System_Int16' )
      & ( 'System_UInt32' != 'System_ICloneable' )
      & ( 'System_Object' != 'System_ICloneable' )
      & ( 'System_IntPtr' != 'System_Collections_IEnumerable' )
      & ( 'ArrayCategoryNonNullRef' != 'System_SByte' )
      & ( elements != 'SharingMode_LockProtected' )
      & ( inv != ownerRef )
      & ( 'ArrayCategoryInt' != 'System_IEquatable_1___System_String' )
      & ( 'System_Object' != 'System_IntPtr' )
      & ( ownerFrame != 'System_UInt16' )
      & ( elements != 'System_Boolean' )
      & ( 'ArrayCategoryRef' != 'System_IConvertible' )
      & ( 'System_IntPtr' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_Type' != 'System_SByte' )
      & ( ownerRef != 'System_Type' )
      & ( 'PeerGroupPlaceholder' != 'System_IntPtr' )
      & ( 'System_ICloneable' != 'System_Collections_IEnumerable' )
      & ( 'System_Int16' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_Int32' != stringLiteral0 )
      & ( 'System_Type' != 'System_IConvertible' )
      & ( ownerFrame != 'System_IComparable' )
      & ( 'NonNullFieldsAreInitialized' != 'System_IComparable_1___System_String' )
      & ( 'System_Boolean' != 'System_Char' )
      & ( 'System_IConvertible' != stringLiteral0 )
      & ( 'SharingMode_LockProtected' != 'System_UIntPtr' )
      & ( 'System_UInt32' != stringLiteral0 )
      & ( ownerRef != 'ArrayCategoryInt' )
      & ( 'SharingMode_LockProtected' != 'System_Array' )
      & ( 'System_Boolean' != 'System_IComparable' )
      & ( 'ArrayCategoryInt' != 'System_Int64' )
      & ( sharingMode != 'System_UIntPtr' )
      & ( localinv != 'System_UInt64' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Array' )
      & ( 'System_Boolean' != 'System_ICloneable' )
      & ( localinv != 'System_Int32' )
      & ( 'PeerGroupPlaceholder' != stringLiteral0 )
      & ( 'Factorial' != stringLiteral0 )
      & ( ownerRef != 'System_Boolean' )
      & ( allocated != elements )
      & ( 'System_UInt16' != 'System_Int32' )
      & ( 'ArrayCategoryRef' != 'System_Int64' )
      & ( ownerFrame != 'System_Boolean' )
      & ( 'PeerGroupPlaceholder' != 'ArrayCategoryValue' )
      & ( 'System_Int16' != 'System_IConvertible' )
      & ( 'ArrayCategoryNonNullRef' != 'NonNullFieldsAreInitialized' )
      & ( localinv != 'System_Type' )
      & ( ownerRef != 'System_IComparable' )
      & ( 'ArrayCategoryInt' != 'System_Char' )
      & ( 'ArrayCategoryRef' != 'System_IntPtr' )
      & ( 'ArrayCategoryValue' != 'System_Type' )
      & ( 'ArrayCategoryRef' != 'System_String' )
      & ( 'System_Boolean' != 'System_String' )
      & ( 'System_Object' != 'System_Char' )
      & ( inv != 'System_Int32' )
      & ( 'System_SByte' != 'System_UInt32' )
      & ( 'SharingMode_Unshared' != 'System_UInt16' )
      & ( 'SharingMode_LockProtected' != 'Factorial' )
      & ( 'System_Byte' != 'System_IntPtr' )
      & ( 'System_Int32' != 'Factorial' )
      & ( 'PeerGroupPlaceholder' != 'ArrayCategoryNonNullRef' )
      & ( 'System_Boolean' != 'System_Int64' )
      & ( 'SharingMode_Unshared' != 'ArrayCategoryValue' )
      & ( sharingMode != 'System_Object' )
      & ( 'FirstConsistentOwner' != 'System_Byte' )
      & ( inv != 'System_IntPtr' )
      & ! [X195: $int,X194: $int] :
        ? [X196: $int] :
          ( ( true_1 = x(X196,X196) )
          & ( true_1 = x(X196,'System_Array') )
          & ( 'ValueArray'(X195,X194) = X196 ) )
      & ! [X199: $int,X197: $int,X200: $int,X198: $int] :
        ? [X201: $int] :
          ( ? [X202: $int] :
              ( ( 'ElementProxy'(X201,X200) = X202 )
              & ( ( ( select2(X197,X202,ownerRef) = select2(X197,X199,ownerRef) )
                  & ( select2(X197,X202,ownerFrame) = select2(X197,X199,ownerFrame) ) )
                | ( true_1 != 'IsHeap'(X197) )
                | ( nullObject = X201 ) ) )
          & ( select2(X197,X199,'AsElementsPeerField'(X198,X200)) = X201 ) )
      & ! [X67: $int,X68: $int] :
          ( ( nullObject = 'As'(X68,X67) )
          | ( true_1 = 'Is'(X68,X67) ) )
      & ! [X158: $int,X159: $int] :
          ( ( shl(X159,X158) = $product(shl(X159,$sum(X158,$uminus(1))),2) )
          | $less(X158,1) )
      & ( $sum(int_m9223372036854775808,1) = $sum(0,$uminus(int_9223372036854775807)) )
      & ! [X203: $int] : ( shl(X203,0) = X203 )
      & ! [X222: $int,X223: $int,X224: $int] :
        ? [X225: $int] :
          ( ( ( true_1 != x(X224,X225) )
            | ( X224 = X225 ) )
          & ( 'IntArray'(X223,X222) = X225 ) )
      & ! [X123: $int,X124: $int,X125: $int,X122: $int] :
        ? [X126: $int] :
          ( ( 'UnboxedType'(X126) = X122 )
          & ( 'Box'(X124,X126) = X126 )
          & ( 'BoxFunc'(X124,X122,X125,X123) = X126 ) )
      & ! [X173: $int,X174: $int] :
        ? [X175: $int] :
          ( ( x_2(X173,X174) = X175 )
          & ( ( ~ $less(0,X175)
              & $less($sum(0,$uminus(X174)),X175) )
            | ~ $less(0,X174)
            | $less(0,X173) ) )
      & ! [X262: $int,X264: $int,X263: $int] :
        ? [X265: $int] :
          ( ( 'ElementType'(X262) = X265 )
          & ( ( ( 'RefArray'(X265,X264) = X262 )
              & ( true_1 = x(X263,X265) ) )
            | ( true_1 = x('System_Array',X262) )
            | ( true_1 != x('RefArray'(X263,X264),X262) ) ) )
      & ( true_1 = x('System_IEquatable_1___System_String','System_IEquatable_1___System_String') )
      & ! [X315: $int,X316: $int] :
          ( $less(X316,1)
          | ( shr(X315,X316) = x_1(shr(X315,$sum(X316,$uminus(1))),2) ) )
      & ! [X95: $int] :
          ( ( true_1 != 'IsValueType'(X95) )
          | ( ! [X96: $int] :
                ( ( true_1 != x(X95,X96) )
                | ( X95 = X96 ) )
            & ! [X97: $int] :
                ( ( X95 = X97 )
                | ( true_1 != x(X97,X95) ) ) ) )
      & ! [X347: $int] : ~ $less('StringLength'(X347),0)
      & ! [X221: $int] :
          ( ( 'DimLength'(X221,0) = 'Length'(X221) )
          | ( 1 != 'Rank'(X221) ) )
      & ( true_1 = x('System_Collections_Generic_IEnumerable_1___System_Char','System_Collections_Generic_IEnumerable_1___System_Char') )
      & ! [X44: $int,X43: $int] :
        ? [X45: $int] :
          ( ( typeof(X43) = X45 )
          & ( ( ( select2(X44,X43,localinv) = X45 )
              & ( select2(X44,X43,inv) = X45 ) )
            | ( true_1 != x(X45,'System_Array') )
            | ( nullObject = X43 )
            | ( true_1 != 'IsHeap'(X44) ) ) )
      & ( true_1 = 'IncludeInMainFrameCondition'(allocated) )
      & ( true_1 = x('System_String','System_IComparable_1___System_String') )
      & ( 'System_Object' = 'DeclType'(exposeVersion) )
      & ( 'StringLength'(stringLiteral0) = 19 )
      & ! [X47: $int,X50: $int,X48: $int,X49: $int] : ( 'ArrayIndexInvY'('ArrayIndex'(X50,X49,X47,X48)) = X48 )
      & ! [X218: $int,X217: $int,X219: $int] :
        ? [X220: $int] :
          ( ( 'ElementType'(X219) = X220 )
          & ( ( true_1 = x('System_Array',X219) )
            | ( ( 'NonNullRefArray'(X220,X217) = X219 )
              & ( true_1 = x(X218,X220) ) )
            | ( true_1 != x('NonNullRefArray'(X218,X217),X219) ) ) )
      & ! [X326: $int] :
          ( ( ~ $less(X326,0)
            & ~ $less(int_4294967295,X326) )
        <=> ( true_1 = 'InRange'(X326,'System_UInt32') ) )
      & ( true_1 != 'IncludedInModifiesStar'(ownerRef) )
      & ( true_1 != 'IsImmutable'('Factorial') )
      & ! [X148: $int,X146: $int,X147: $int,X149: $int] : ( 'ArrayIndexInvX'('ArrayIndex'(X146,X149,X148,X147)) = X148 )
      & ( true_1 = x('System_ICloneable','System_Object') )
      & ( 'System_IComparable_1___System_String' = 'AsInterface'('System_IComparable_1___System_String') )
      & ! [X94: $int,X92: $int,X93: $int] :
          ( ~ $less(X94,$sum(X92,X93))
          | $less(X93,2)
          | ( x_2(X94,X93) != x_2(X92,X93) )
          | ~ $less(X92,X94) )
      & ! [X311: $int,X310: $int,X312: $int] :
        ? [X313: $int,X314: $int] :
          ( ( ( select2(X310,X312,X311) = 'FieldDependsOnFCO'(X312,X311,select2(X310,select2(X310,X312,'FirstConsistentOwner'),exposeVersion)) )
            | ( 'PeerGroupPlaceholder' = X313 )
            | ( 'BaseClass'(X313) = select2(X310,X314,localinv) )
            | ( nullObject = X312 )
            | ( true_1 != 'IsHeap'(X310) )
            | ( 'AsPureObject'(X312) != X312 )
            | ( true_1 != x(select2(X310,X314,inv),X313) )
            | ( true_1 != select2(X310,X312,allocated) ) )
          & ( select2(X310,X312,ownerFrame) = X313 )
          & ( select2(X310,X312,ownerRef) = X314 ) )
      & ! [X192: $int] :
        ? [X193: $int] :
          ( ~ $less(int_2147483647,X193)
          & ~ $less(X193,0)
          & ( 'Length'(X192) = X193 ) )
      & ! [X85: $int] :
          ( ! [X87: $int,X86: $int] :
            ? [X88: $int] :
              ( ? [X89: $int] :
                  ( ( ( ( select2(X87,X88,localinv) = X89 )
                      & ( select2(X87,X88,inv) = X89 ) )
                    | ( true_1 != 'IsHeap'(X87) ) )
                  & ( typeof(X88) = X89 ) )
              & ( 'Box'(X86,X85) = X88 ) )
          | ( true_1 != 'IsValueType'('UnboxedType'(X85)) ) )
      & ! [X52: $int,X51: $int] : ( 'Unbox'('Box'(X52,X51)) = X52 )
      & ! [X248: $int,X247: $int] :
          ( ( 'AsRefField'(X248,X247) = X248 )
          | ( 'AsNonNullRefField'(X248,X247) != X248 ) )
      & ( true_1 = 'IncludeInMainFrameCondition'(ownerRef) )
      & ! [X113: $int,X112: $int] :
        ? [X114: $int] :
          ( ( ( ~ $less(0,X114)
              & $less(X113,X114) )
            | $less(0,X112)
            | ~ $less(X113,0) )
          & ( x_2(X112,X113) = X114 ) )
      & ! [X116: $int,X117: $int,X115: $int] :
          ( ( 'ArrayCategoryInt' = 'ArrayCategory'(X116) )
          | ( true_1 != x(X116,'IntArray'(X115,X117)) ) )
      & ( true_1 = 'IsValueType'('System_Char') )
      & ! [X206: $int] : ( 'TypeName'('TypeObject'(X206)) = X206 )
      & $less(int_4294967295,int_9223372036854775807)
      & ( true_1 = x('System_Collections_Generic_IEnumerable_1___System_Char','System_Collections_IEnumerable') )
      & ( true_1 = x('System_String','System_String') )
      & ( true_1 != 'IncludedInModifiesStar'(ownerFrame) )
      & ! [X350: $int,X351: $int,X352: $int] : ( 'ValueArrayGet'('ValueArraySet'(X352,X350,X351),X350) = X351 )
      & ! [X16: $int,X17: $int] :
        ? [X18: $int] :
          ( ( 'IntArray'(X16,X17) = X18 )
          & ( true_1 = x(X18,'System_Array') )
          & ( true_1 = x(X18,X18) ) )
      & ! [X69: $int,X70: $int,X71: $int] :
        ? [X72: $int] :
          ( ( ( true_1 != 'NonNullRefArrayRaw'(X69,X71,X70) )
            | ( ( true_1 = x(X72,'System_Array') )
              & ( true_1 = x(X71,'ElementType'(X72)) )
              & ( 'Rank'(X69) = X70 ) ) )
          & ( typeof(X69) = X72 ) )
      & ! [X349: $int,X348: $int] : ( 'ElementType'('ValueArray'(X348,X349)) = X348 )
      & ! [X171: $int,X172: $int] : ~ $less('DimLength'(X171,X172),0)
      & ! [X346: $int] :
          ( ( $less(X346,128)
            & ~ $less(X346,$sum(0,$uminus(128))) )
        <=> ( true_1 = 'InRange'(X346,'System_SByte') ) )
      & ! [X73: $int,X74: $int,X75: $int] :
        ? [X76: $int] :
          ( ( ( ( true_1 = x(X76,X74) )
              & ( 'RefArray'(X76,X75) = X73 )
              & ( X73 != X74 ) )
            | ( true_1 != x(X73,'RefArray'(X74,X75)) ) )
          & ( 'ElementType'(X73) = X76 ) )
      & ! [X20: $int,X19: $int,X21: $int] :
          ( ( true_1 = 'IsAllocated'(X20,select2(X20,X19,X21)) )
          | ( true_1 != select2(X20,X19,allocated) )
          | ( true_1 != 'IsHeap'(X20) ) )
      & ( 'System_String' = 'AsDirectSubClass'('System_String',X1) )
      & ( true_1 = 'IncludedInModifiesStar'(elements) )
      & ! [X282: $int] : ( true_1 != 'IsMemberlessType'(typeof(X282)) )
      & ! [X301: $int,X302: $int] :
          ( ( 'PeerGroupPlaceholder' = select2(X302,'ClassRepr'(X301),ownerFrame) )
          | ( true_1 != 'IsHeap'(X302) ) )
      & ! [X306: $int,X305: $int] :
        ? [X307: $int] :
          ( ( ( X305 = X307 )
            | ( X306 = X307 ) )
          & ~ $less(X307,X306)
          & ~ $less(X307,X305)
          & ( max(X306,X305) = X307 ) )
      & ( true_1 = 'IsMemberlessType'('System_ICloneable') )
      & ! [X33: $int,X32: $int] :
          ( ( ( true_1 = 'Is'(X32,X33) )
            & ( nullObject != X32 ) )
        <=> ( true_1 = 'IsNotNull'(X32,X33) ) )
      & ( true_1 != 'IsImmutable'('System_Object') )
      & ( true_1 = x('Factorial','Factorial') )
      & ( true_1 = 'IncludeInMainFrameCondition'(elements) )
      & ( true_1 = x('System_String','System_Collections_Generic_IEnumerable_1___System_Char') )
      & ! [X56: $int,X60: $int,X57: $int,X59: $int,X58: $int] :
          ( ( nullObject != 'RefArrayGet'(select2(X59,X60,elements),X58) )
          | ( true_1 != x(typeof(X60),'NonNullRefArray'(X56,X57)) )
          | ( true_1 != 'IsHeap'(X59) ) )
      & ( true_1 = x('System_Array','System_Object') )
      & ! [X53: $int,X54: $int] :
          ( ( ( true_1 = x(typeof(X54),X53) )
            | ( nullObject = X54 ) )
        <=> ( true_1 = 'Is'(X54,X53) ) )
      & ( 'System_Object' = X0 )
      & ! [X289: $int,X287: $int,X288: $int,X286: $int] :
          ( ( true_1 != 'IsHeap'(X287) )
          | ( true_1 = 'InRange'(select2(X287,X286,'AsRangeField'(X288,X289)),X289) ) )
      & $less(int_9223372036854775807,int_18446744073709551615)
      & ! [X323: $int,X324: $int] :
        ? [X325: $int] :
          ( ( min(X324,X323) = X325 )
          & ~ $less(X324,X325)
          & ~ $less(X323,X325)
          & ( ( X323 = X325 )
            | ( X324 = X325 ) ) )
      & ! [X143: $int,X144: $int] : ( 'System_Object' = typeof('ElementProxy'(X144,X143)) )
      & ( 'System_IEquatable_1___System_String' = 'AsInterface'('System_IEquatable_1___System_String') )
      & ! [X327: $int,X329: $int,X328: $int] :
          ( ( 'IfThenElse'(X329,X327,X328) = X328 )
          | ( true_1 = X329 ) )
      & ! [X372: $int,X371: $int] : ( 'ElementType'('NonNullRefArray'(X372,X371)) = X372 )
      & ! [X165: $int,X164: $int,X166: $int] :
          ( ( 'ArrayCategoryValue' = 'ArrayCategory'(X166) )
          | ( true_1 != x(X166,'ValueArray'(X164,X165)) ) )
      & ! [X140: $int,X141: $int,X142: $int] :
          ( ( 'Rank'(X140) = X142 )
          | ( true_1 != x(typeof(X140),'RefArray'(X141,X142)) )
          | ( nullObject = X140 ) )
      & ! [X260: $int,X259: $int,X258: $int,X261: $int] :
          ( ( 'StructGet'('StructSet'(X259,X258,X261),X260) = 'StructGet'(X259,X260) )
          | ( X258 = X260 ) )
      & ! [X234: $int,X236: $int,X235: $int,X233: $int] :
        ? [X237: $int] :
          ( ( ( ( select2(X236,X237,ownerRef) = X233 )
              & ( select2(X236,X237,ownerFrame) = X235 ) )
            | ( nullObject = X237 )
            | ( true_1 != 'IsHeap'(X236) ) )
          & ( select2(X236,X233,'AsRepField'(X234,X235)) = X237 ) )
      & ( true_1 = 'IsValueType'('System_Boolean') )
      & ! [X78: $int,X77: $int] : ( 'UBound'(X78,X77) = $sum('DimLength'(X78,X77),$uminus(1)) )
      & ! [X374: $int,X373: $int,X375: $int] :
          ( ( true_1 != 'IsAllocated'(X374,X375) )
          | ( true_1 = 'IsAllocated'(X374,'RefArrayGet'(X375,X373)) ) )
      & ( $sum(int_m2147483648,1) = $sum(0,$uminus(int_2147483647)) )
      & ( 'System_Object' = 'DeclType'('NonNullFieldsAreInitialized') )
      & ! [X215: $int,X214: $int] : ( 0 = 'LBound'(X214,X215) )
      & ! [X162: $int] : ( true_1 = 'IsNotNull'('TypeObject'(X162),'System_Type') )
      & ! [X55: $int] :
          ( ( true_1 != 'IsHeap'(X55) )
          | ( true_1 = select2(X55,stringLiteral0,allocated) ) )
      & ! [X26: $int,X27: $int] : ( x_2(X26,X27) = $sum(X26,$uminus($product(x_1(X26,X27),X27))) )
      & ! [X280: $int,X281: $int,X278: $int,X279: $int] :
          ( ( 'BoxFunc'(X281,X280,X278,X279) = X281 )
          | ( true_1 = 'IsValueType'('UnboxedType'(X281)) ) )
      & ! [X103: $int,X101: $int,X102: $int] :
          ( ( true_1 = 'StringEquals'(X101,X102) )
          | ( true_1 != 'StringEquals'(X103,X102) )
          | ( true_1 != 'StringEquals'(X101,X103) ) )
      & ! [X341: $int,X339: $int,X338: $int,X340: $int] :
          ( ( X338 = X339 )
          | ( 'ValueArrayGet'(X341,X338) = 'ValueArrayGet'('ValueArraySet'(X341,X339,X340),X338) ) )
      & ! [X2: $int,X3: $int] :
        ? [X4: $int] :
          ( ( ( ~ $less(int_2147483647,X4)
              & ~ $less(X4,0) )
            | ~ $less(X2,32768)
            | $less(16,X3)
            | $less(X3,0)
            | $less(X2,0) )
          & ( shl(X2,X3) = X4 ) )
      & ! [X163: $int] : ( true_1 != x(typeof('ClassRepr'(X163)),'System_Object') )
      & ( true_1 = x('System_String','System_IEquatable_1___System_String') )
      & ! [X99: $int,X98: $int] :
        ? [X100: $int] :
          ( ( ( X98 = X99 )
            | ( true_1 != x('UnboxedType'(X100),'System_Object') )
            | ( X99 != X100 ) )
          & ( 'Box'(X98,X99) = X100 ) )
      & ! [X180: $int,X179: $int,X181: $int,X182: $int] :
          ( ( 'IntArrayGet'('IntArraySet'(X182,X181,X179),X180) = 'IntArrayGet'(X182,X180) )
          | ( X180 = X181 ) )
      & ! [X299: $int,X298: $int,X300: $int] :
          ( ( true_1 = 'IsAllocated'(X300,'ValueArrayGet'(X299,X298)) )
          | ( true_1 != 'IsAllocated'(X300,X299) ) )
      & ( true_1 = 'IsImmutable'('System_String') )
      & ! [X291: $int] :
        ? [X292: $int] :
          ( ( ( 'System_Object' = X291 )
            | ( X291 != X292 ) )
          & ( true_1 = x(X291,X292) )
          & ( 'BaseClass'(X291) = X292 ) )
      & ! [X130: $int] :
          ( ( true_1 != x(X130,'System_String') )
          | ( 'System_String' = X130 ) )
      & ! [X105: $int,X104: $int,X106: $int] :
        ? [X107: $int] :
          ( ( 'ValueArray'(X104,X105) = X107 )
          & ( ( X106 = X107 )
            | ( true_1 != x(X106,X107) ) ) )
      & ! [X139: $int,X138: $int,X137: $int] :
          ( ( true_1 = x('RefArray'(X137,X139),'RefArray'(X138,X139)) )
          | ( true_1 != x(X137,X138) ) )
      & ( true_1 = 'IncludeInMainFrameCondition'(ownerFrame) )
      & ! [X342: $int] :
          ( ( stringLiteral0 = 'System_String_IsInterned_System_String_notnull'(X342,stringLiteral0) )
          | ( true_1 != 'IsHeap'(X342) ) )
      & ( true_1 = x('System_ICloneable','System_ICloneable') )
      & ! [X187: $int,X186: $int] :
          ( ( true_1 = 'IsAllocated'(X187,'ElementProxy'(X186,$sum(0,$uminus(1)))) )
          | ( true_1 != x(typeof(X186),'System_Array') )
          | ( true_1 != 'IsHeap'(X187) )
          | ( true_1 != 'IsAllocated'(X187,X186) ) )
      & ! [X190: $int,X191: $int] : ( 'System_Object' = typeof('ElementProxyStruct'(X191,X190)) )
      & ( true_1 = 'IncludeInMainFrameCondition'(exposeVersion) )
      & ! [X290: $int] :
          ( ( ~ $less(int_2147483647,X290)
            & ~ $less(X290,int_m2147483648) )
        <=> ( true_1 = 'InRange'(X290,'System_Int32') ) )
      & ! [X38: $int,X37: $int] :
        ? [X40: $int,X39: $int,X41: $int] :
          ( ( ( ( select2(X37,X38,localinv) = X41 )
              & ( select2(X37,X38,inv) = X41 ) )
            | ( true_1 != x(select2(X37,X40,inv),X39) )
            | ( true_1 != 'IsHeap'(X37) )
            | ( select2(X37,X40,localinv) = 'BaseClass'(X39) )
            | ( 'PeerGroupPlaceholder' = X39 ) )
          & ( select2(X37,X38,ownerRef) = X40 )
          & ( select2(X37,X38,ownerFrame) = X39 )
          & ( typeof(X38) = X41 ) )
      & ! [X271: $int,X270: $int] :
          ( ! [X272: $int] :
            ? [X273: $int] :
              ( ( ( ! [X274: $int] :
                      ( ( 'PeerGroupPlaceholder' != select2(X272,X274,ownerFrame) )
                      | ( X270 = X274 )
                      | ( 'AsOwner'(X270,select2(X272,X274,ownerRef)) != X270 ) )
                  & ( select2(X272,X270,localinv) = X273 )
                  & ( select2(X272,X270,inv) = X273 )
                  & ( 'PeerGroupPlaceholder' = select2(X272,X270,ownerFrame) )
                  & ( 'AsOwner'(X270,select2(X272,X270,ownerRef)) = X270 ) )
                | ( true_1 != 'IsHeap'(X272) ) )
              & ( typeof(X270) = X273 ) )
          | ( true_1 != x(typeof(X270),'AsImmutable'(X271)) )
          | ( 'BeingConstructed' = X270 )
          | ( nullObject = X270 ) )
      & ( true_1 != 'IsStaticField'(exposeVersion) ) ),
    inference(ennf_transformation,[],[f26]) ).

tff(f34,plain,
    ? [X1: $int,X0: $int] :
      ( ( 'ArrayCategoryInt' != 'System_Boolean' )
      & ( 'System_String' != 'System_Int64' )
      & ( true_1 = 'IsMemberlessType'('System_Collections_IEnumerable') )
      & ( true_1 = 'IsImmutable'('System_String') )
      & ( elements != sharingMode )
      & ! [X295: $int,X294: $int,X293: $int] :
          ( ( true_1 != 'IsHeap'(X293) )
          | ( true_1 = 'InRange'('IntArrayGet'(select2(X293,X295,elements),X294),'ElementType'(typeof(X295))) ) )
      & ( inv != sharingMode )
      & ( 'System_Object' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_String' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( exposeVersion != 'FirstConsistentOwner' )
      & ( 'System_Type' != 'System_Char' )
      & ( allocated != 'System_Array' )
      & ! [X251: $int,X250: $int,X249: $int] : ( 'IntArrayGet'('IntArraySet'(X250,X251,X249),X251) = X249 )
      & ( 'PeerGroupPlaceholder' != 'System_IComparable_1___System_String' )
      & ( 'ArrayCategoryValue' != 'System_Int32' )
      & ( 'ArrayCategoryValue' != 'System_Object' )
      & ( localinv != 'System_Byte' )
      & ( 'System_SByte' != 'System_ICloneable' )
      & ( 'SharingMode_Unshared' != stringLiteral0 )
      & ( true_1 != 'IsStaticField'(exposeVersion) )
      & ! [X65: $int,X66: $int,X64: $int] :
          ( ( true_1 = x('NonNullRefArray'(X65,X66),'NonNullRefArray'(X64,X66)) )
          | ( true_1 != x(X65,X64) ) )
      & ( 'System_Int32' != 'System_Char' )
      & ! [X252: $int,X253: $int,X254: $int] : ( 'RefArrayGet'('RefArraySet'(X252,X253,X254),X253) = X254 )
      & ( sharingMode != ownerFrame )
      & ( 'NonNullFieldsAreInitialized' != 'System_ICloneable' )
      & ( localinv != 'Factorial' )
      & ( ownerFrame != 'FirstConsistentOwner' )
      & ( 'System_SByte' != 'System_Int32' )
      & ( inv != 'ArrayCategoryInt' )
      & ( 'System_Type' != 'System_IEquatable_1___System_String' )
      & ! [X198: $int,X200: $int,X197: $int,X199: $int] :
        ? [X201: $int] :
          ( ( select2(X197,X199,'AsElementsPeerField'(X198,X200)) = X201 )
          & ? [X202: $int] :
              ( ( 'ElementProxy'(X201,X200) = X202 )
              & ( ( nullObject = X201 )
                | ( true_1 != 'IsHeap'(X197) )
                | ( ( select2(X197,X202,ownerRef) = select2(X197,X199,ownerRef) )
                  & ( select2(X197,X202,ownerFrame) = select2(X197,X199,ownerFrame) ) ) ) ) )
      & ! [X80: $int,X79: $int] :
        ? [X81: $int] :
          ( ( ( ~ $less(X81,0)
              & ~ $less($sum(X80,X79),X81) )
            | $less(X80,0)
            | $less(X79,0) )
          & ( or_1(X80,X79) = X81 ) )
      & ( 'FirstConsistentOwner' != 'System_UInt16' )
      & ( 'System_UInt64' != 'System_Collections_IEnumerable' )
      & ( sharingMode != 'System_Type' )
      & ( 'FirstConsistentOwner' != 'System_Int16' )
      & ( sharingMode != 'System_IComparable_1___System_String' )
      & ( 'SharingMode_LockProtected' != 'ArrayCategoryInt' )
      & ( 'SharingMode_Unshared' != 'System_SByte' )
      & ( true_1 = 'IsValueType'('System_UIntPtr') )
      & ( allocated != localinv )
      & ! [X33: $int,X32: $int] :
          ( ( ( true_1 = 'Is'(X32,X33) )
            & ( nullObject != X32 ) )
        <=> ( true_1 = 'IsNotNull'(X32,X33) ) )
      & ( 'SharingMode_Unshared' != 'System_Collections_IEnumerable' )
      & ( 'ArrayCategoryValue' != 'ArrayCategoryInt' )
      & ( 'System_ICloneable' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_Type' != 'System_UInt64' )
      & ( sharingMode != 'System_UIntPtr' )
      & ( 'ArrayCategoryInt' != 'ArrayCategoryRef' )
      & ( 'System_String' = 'AsDirectSubClass'('System_String',X1) )
      & ( 'ArrayCategoryValue' != 'NonNullFieldsAreInitialized' )
      & ( true_1 = x('System_IEquatable_1___System_String','System_IEquatable_1___System_String') )
      & ( 'System_Type' != 'System_UInt32' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( true_1 = x('System_Collections_Generic_IEnumerable_1___System_Char','System_Collections_IEnumerable') )
      & ! [X130: $int] :
          ( ( true_1 != x(X130,'System_String') )
          | ( 'System_String' = X130 ) )
      & ( ownerFrame != 'System_IComparable_1___System_String' )
      & ( 'System_Object' != 'System_Int32' )
      & ( 'System_Object' != 'FirstConsistentOwner' )
      & ( 'PeerGroupPlaceholder' != 'System_Object' )
      & ( exposeVersion != stringLiteral0 )
      & ( 'System_UInt64' != 'System_IComparable_1___System_String' )
      & ( allocated != 'System_Object' )
      & ( 'System_Type' != 'FirstConsistentOwner' )
      & ( exposeVersion != 'SharingMode_LockProtected' )
      & ! [X289: $int,X287: $int,X288: $int,X286: $int] :
          ( ( true_1 != 'IsHeap'(X287) )
          | ( true_1 = 'InRange'(select2(X287,X286,'AsRangeField'(X288,X289)),X289) ) )
      & ( 'System_Type' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'ArrayCategoryValue' != 'System_Int16' )
      & ( allocated != 'FirstConsistentOwner' )
      & ! [X22: $int] :
          ( ( $less(X22,65536)
            & ~ $less(X22,0) )
        <=> ( true_1 = 'InRange'(X22,'System_Char') ) )
      & ( 'System_Byte' != 'System_IntPtr' )
      & ! [X290: $int] :
          ( ( ~ $less(int_2147483647,X290)
            & ~ $less(X290,int_m2147483648) )
        <=> ( true_1 = 'InRange'(X290,'System_Int32') ) )
      & ( 'System_UIntPtr' != 'System_IEquatable_1___System_String' )
      & ! [X174: $int,X173: $int] :
        ? [X175: $int] :
          ( ( x_2(X173,X174) = X175 )
          & ( $less(0,X173)
            | ~ $less(0,X174)
            | ( ~ $less(0,X175)
              & $less($sum(0,$uminus(X174)),X175) ) ) )
      & ( 'System_IEquatable_1___System_String' != 'System_Collections_IEnumerable' )
      & ( 'System_UInt16' != 'System_IConvertible' )
      & ! [X78: $int,X77: $int] : ( 'UBound'(X78,X77) = $sum('DimLength'(X78,X77),$uminus(1)) )
      & ( 'System_Int64' != stringLiteral0 )
      & ( 'NonNullFieldsAreInitialized' != 'Factorial' )
      & ( 'ArrayCategoryNonNullRef' != 'System_ICloneable' )
      & ( 'ArrayCategoryRef' != 'System_SByte' )
      & ( exposeVersion != 'SharingMode_Unshared' )
      & ( 'ArrayCategoryInt' != 'System_IEquatable_1___System_String' )
      & ( 'System_Int32' != 'System_ICloneable' )
      & ( ownerRef != 'NonNullFieldsAreInitialized' )
      & ( exposeVersion != 'System_Int32' )
      & ( 'ArrayCategoryRef' != 'System_IConvertible' )
      & ( 'BaseClass'('System_String') = X1 )
      & ! [X303: $int,X304: $int] :
          ( ( nullObject != 'BoxTester'(X303,X304) )
        <=> ( 'UnboxedType'(X303) = X304 ) )
      & ( 'PeerGroupPlaceholder' != 'System_Array' )
      & $less(int_m2147483648,$sum(0,$uminus(100000)))
      & ( 'System_IntPtr' != stringLiteral0 )
      & ! [X62: $int,X61: $int,X63: $int] :
          ( ( 'IfThenElse'(X63,X62,X61) = X62 )
          | ( true_1 != X63 ) )
      & ( ownerRef != 'System_ICloneable' )
      & ( 'ArrayCategoryInt' != 'System_Collections_IEnumerable' )
      & ( 'System_Type' != stringLiteral0 )
      & ( 'System_Byte' != 'System_IEquatable_1___System_String' )
      & ( 'ArrayCategoryValue' != 'ArrayCategoryNonNullRef' )
      & ( true_1 != 'IsImmutable'('System_Object') )
      & ( 'System_SByte' != stringLiteral0 )
      & ( ownerFrame != 'ArrayCategoryNonNullRef' )
      & ( elements != 'System_IEquatable_1___System_String' )
      & ( localinv != ownerRef )
      & ( localinv != exposeVersion )
      & ( 'ArrayCategoryRef' != 'System_Int64' )
      & ( 'System_Collections_IEnumerable' = 'AsInterface'('System_Collections_IEnumerable') )
      & ! [X217: $int,X218: $int,X219: $int] :
        ? [X220: $int] :
          ( ( 'ElementType'(X219) = X220 )
          & ( ( true_1 = x('System_Array',X219) )
            | ( true_1 != x('NonNullRefArray'(X218,X217),X219) )
            | ( ( 'NonNullRefArray'(X220,X217) = X219 )
              & ( true_1 = x(X218,X220) ) ) ) )
      & ( true_1 = 'IsMemberlessType'('System_IConvertible') )
      & ( 'SharingMode_LockProtected' != 'System_Char' )
      & ( 'SharingMode_LockProtected' != 'System_IComparable' )
      & ( true_1 = x('System_Collections_IEnumerable','System_Object') )
      & ( 'PeerGroupPlaceholder' != 'System_Char' )
      & ! [X42: $int] : ( shr(X42,0) = X42 )
      & ( localinv != 'ArrayCategoryNonNullRef' )
      & ( localinv != 'System_Array' )
      & ( 'System_ICloneable' = 'AsInterface'('System_ICloneable') )
      & ( 'ArrayCategoryRef' != 'ArrayCategoryNonNullRef' )
      & ( 'System_Byte' != stringLiteral0 )
      & ( true_1 = x('System_IComparable_1___System_String','System_IComparable_1___System_String') )
      & ( 'System_Int64' != 'System_UIntPtr' )
      & ( allocated != 'System_UInt16' )
      & ! [X185: $int,X183: $int,X184: $int] :
          ( ( true_1 != 'IsAllocated'(X183,X184) )
          | ( true_1 = 'IsAllocated'(X183,'StructGet'(X184,X185)) ) )
      & ( 'SharingMode_LockProtected' != 'System_IComparable_1___System_String' )
      & ( 'ArrayCategoryValue' != 'System_Type' )
      & ( elements != 'System_UInt16' )
      & ( 'PeerGroupPlaceholder' != 'System_SByte' )
      & ( ownerRef != 'ArrayCategoryInt' )
      & ( allocated != 'SharingMode_Unshared' )
      & ( 'System_Int16' != 'System_IntPtr' )
      & ( 'PeerGroupPlaceholder' != 'NonNullFieldsAreInitialized' )
      & ( 'PeerGroupPlaceholder' != 'ArrayCategoryRef' )
      & ( ownerFrame != 'NonNullFieldsAreInitialized' )
      & ( ownerRef != stringLiteral0 )
      & ( exposeVersion != 'System_SByte' )
      & ( inv != exposeVersion )
      & ( 'System_IntPtr' != 'System_IConvertible' )
      & ( 'ArrayCategoryInt' != 'System_Char' )
      & ( 'ArrayCategoryNonNullRef' != 'System_UIntPtr' )
      & ( inv != stringLiteral0 )
      & ( allocated != sharingMode )
      & ( ownerFrame != 'ArrayCategoryRef' )
      & ( true_1 = 'IncludedInModifiesStar'(elements) )
      & ! [X355: $int,X353: $int,X354: $int] :
          ( ( true_1 = 'System_String_Equals_System_String_System_String'(X355,X354,X353) )
        <=> ( true_1 = 'System_String_Equals_System_String'(X355,X354,X353) ) )
      & ( 'ArrayCategoryNonNullRef' != 'System_IEquatable_1___System_String' )
      & ( 'PeerGroupPlaceholder' != 'System_Int64' )
      & ( elements != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_Array' != 'System_UInt64' )
      & ( 'System_Type' != 'System_Int64' )
      & ( exposeVersion != 'System_UIntPtr' )
      & ( ownerRef != 'System_UInt64' )
      & ( 'System_Type' != 'System_ICloneable' )
      & ( 'System_Byte' != 'System_Char' )
      & ( 'SharingMode_Unshared' != 'System_Object' )
      & ( inv != 'PeerGroupPlaceholder' )
      & ( sharingMode != 'System_Collections_IEnumerable' )
      & ( ownerRef != 'ArrayCategoryRef' )
      & ( 'NonNullFieldsAreInitialized' != 'System_IntPtr' )
      & ( 'System_UInt16' != 'System_UIntPtr' )
      & ! [X264: $int,X263: $int,X262: $int] :
        ? [X265: $int] :
          ( ( 'ElementType'(X262) = X265 )
          & ( ( true_1 = x('System_Array',X262) )
            | ( ( 'RefArray'(X265,X264) = X262 )
              & ( true_1 = x(X263,X265) ) )
            | ( true_1 != x('RefArray'(X263,X264),X262) ) ) )
      & ( exposeVersion != 'System_Array' )
      & ( ownerRef != 'System_IComparable_1___System_String' )
      & ( elements != 'NonNullFieldsAreInitialized' )
      & ( 'System_UInt32' != 'System_UInt64' )
      & ( ownerFrame != 'System_Type' )
      & ( exposeVersion != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & $less(int_2147483647,int_4294967295)
      & ( inv != 'System_Object' )
      & ( allocated != 'System_Int32' )
      & ( 'System_Byte' != 'System_UIntPtr' )
      & ( allocated != 'System_IEquatable_1___System_String' )
      & ( 'System_String' != 'System_Byte' )
      & ( 'System_Type' != 'NonNullFieldsAreInitialized' )
      & ( 'SharingMode_Unshared' != 'System_Array' )
      & ( 'ArrayCategoryRef' != 'System_UInt64' )
      & ( 'System_Char' != stringLiteral0 )
      & ( 'SharingMode_LockProtected' != 'System_Byte' )
      & ( 'System_IntPtr' != 'Factorial' )
      & ! [X221: $int] :
          ( ( 'DimLength'(X221,0) = 'Length'(X221) )
          | ( 1 != 'Rank'(X221) ) )
      & ! [X150: $int,X151: $int] :
          ( ( true_1 != 'Is'(X150,X151) )
          | ( 'As'(X150,X151) = X150 ) )
      & ( 'FirstConsistentOwner' != 'System_Char' )
      & ( 'ArrayCategoryNonNullRef' != stringLiteral0 )
      & ( 'System_Array' != 'System_Collections_IEnumerable' )
      & ! [X10: $int,X8: $int,X9: $int] :
        ? [X12: $int,X11: $int] :
          ( ( ( true_1 != x(typeof(X10),'System_Array') )
            | ( nullObject = X11 )
            | ( ( select2(X8,X11,ownerRef) = select2(X8,X12,ownerRef) )
              & ( select2(X8,X12,ownerFrame) = select2(X8,X11,ownerFrame) ) )
            | ( true_1 != 'IsHeap'(X8) )
            | ( true_1 = 'IsImmutable'(typeof(X11)) ) )
          & ( 'ElementProxy'(X10,$sum(0,$uminus(1))) = X12 )
          & ( 'RefArrayGet'(select2(X8,X10,elements),X9) = X11 ) )
      & ( 'PeerGroupPlaceholder' != 'System_IEquatable_1___System_String' )
      & ( elements != 'System_IComparable' )
      & ( 'System_Char' != 'System_IEquatable_1___System_String' )
      & ( exposeVersion != 'ArrayCategoryInt' )
      & ( 'System_Byte' != 'Factorial' )
      & ( 'System_SByte' != 'System_UInt16' )
      & ( allocated != 'ArrayCategoryRef' )
      & ( 'System_Int32' != 'System_IEquatable_1___System_String' )
      & ( allocated != 'NonNullFieldsAreInitialized' )
      & ( 'FirstConsistentOwner' != stringLiteral0 )
      & ( true_1 != 'IsStaticField'(inv) )
      & ( exposeVersion != 'ArrayCategoryValue' )
      & ( exposeVersion != 'System_Object' )
      & ( 'System_Int32' != stringLiteral0 )
      & ( 'ArrayCategoryValue' != 'System_IConvertible' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Boolean' )
      & ( ownerFrame != 'System_IEquatable_1___System_String' )
      & ( 'ArrayCategoryRef' != 'System_IntPtr' )
      & ( allocated != 'System_Collections_IEnumerable' )
      & ( 'System_SByte' != 'System_IConvertible' )
      & ( 'System_SByte' != 'System_IComparable' )
      & ( sharingMode != 'System_Int64' )
      & ( 'System_SByte' != 'System_Collections_IEnumerable' )
      & ( 'ArrayCategoryValue' != 'System_IComparable' )
      & ( 'System_Object' = X0 )
      & ( true_1 = x('System_String','System_IComparable_1___System_String') )
      & ! [X38: $int,X37: $int] :
        ? [X39: $int,X40: $int,X41: $int] :
          ( ( typeof(X38) = X41 )
          & ( select2(X37,X38,ownerRef) = X40 )
          & ( select2(X37,X38,ownerFrame) = X39 )
          & ( ( true_1 != 'IsHeap'(X37) )
            | ( ( select2(X37,X38,localinv) = X41 )
              & ( select2(X37,X38,inv) = X41 ) )
            | ( true_1 != x(select2(X37,X40,inv),X39) )
            | ( 'PeerGroupPlaceholder' = X39 )
            | ( select2(X37,X40,localinv) = 'BaseClass'(X39) ) ) )
      & ( elements != 'System_UInt64' )
      & ! [X350: $int,X351: $int,X352: $int] : ( 'ValueArrayGet'('ValueArraySet'(X352,X350,X351),X350) = X351 )
      & ( 'System_UInt64' != 'Factorial' )
      & ( 'System_Boolean' != 'FirstConsistentOwner' )
      & ( sharingMode != 'System_Char' )
      & ( 'PeerGroupPlaceholder' != 'System_Int32' )
      & ( 'SharingMode_Unshared' != 'System_Int16' )
      & ( 'System_IComparable_1___System_String' != stringLiteral0 )
      & ( sharingMode != 'SharingMode_Unshared' )
      & ( inv != 'SharingMode_LockProtected' )
      & ( 'FirstConsistentOwner' != 'System_Collections_IEnumerable' )
      & ( 'System_Int32' != 'System_IConvertible' )
      & ! [X165: $int,X164: $int,X166: $int] :
          ( ( 'ArrayCategoryValue' = 'ArrayCategory'(X166) )
          | ( true_1 != x(X166,'ValueArray'(X164,X165)) ) )
      & ( 'PeerGroupPlaceholder' != 'System_IComparable' )
      & ( 'System_UInt16' != 'System_UInt32' )
      & ( 'System_Type' != 'System_Byte' )
      & ( 'System_Boolean' != 'NonNullFieldsAreInitialized' )
      & ( ownerFrame != 'PeerGroupPlaceholder' )
      & ( 'System_Boolean' != 'System_UInt64' )
      & ( 'System_UInt16' != 'System_ICloneable' )
      & ! [X53: $int,X54: $int] :
          ( ( ( true_1 = x(typeof(X54),X53) )
            | ( nullObject = X54 ) )
        <=> ( true_1 = 'Is'(X54,X53) ) )
      & ( 'System_SByte' != 'Factorial' )
      & ( 'System_Object' = 'DeclType'(elements) )
      & ( ownerRef != 'System_IEquatable_1___System_String' )
      & ( 'Factorial' != stringLiteral0 )
      & ! [X47: $int,X50: $int,X48: $int,X49: $int] : ( 'ArrayIndexInvY'('ArrayIndex'(X50,X49,X47,X48)) = X48 )
      & ( 'System_IConvertible' != 'Factorial' )
      & ! [X276: $int,X277: $int,X275: $int] : ( 'StructGet'('StructSet'(X276,X275,X277),X275) = X277 )
      & ( 'System_Boolean' != 'System_Int64' )
      & ( 'FirstConsistentOwner' != 'System_Byte' )
      & ( allocated != 'System_UInt64' )
      & ( 'FirstConsistentOwner' != 'System_IntPtr' )
      & ( elements != 'System_Object' )
      & ( 'System_UInt16' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_ICloneable' != 'System_IComparable' )
      & ( 'NonNullFieldsAreInitialized' != 'System_IEquatable_1___System_String' )
      & ( 'System_Char' != 'System_Collections_IEnumerable' )
      & ( localinv != 'SharingMode_Unshared' )
      & ( 'PeerGroupPlaceholder' != 'System_UIntPtr' )
      & ! [X139: $int,X138: $int,X137: $int] :
          ( ( true_1 = x('RefArray'(X137,X139),'RefArray'(X138,X139)) )
          | ( true_1 != x(X137,X138) ) )
      & ! [X194: $int,X195: $int] :
        ? [X196: $int] :
          ( ( true_1 = x(X196,X196) )
          & ( true_1 = x(X196,'System_Array') )
          & ( 'ValueArray'(X195,X194) = X196 ) )
      & ( elements != 'System_Collections_IEnumerable' )
      & ( 'System_SByte' != 'System_UInt32' )
      & ( sharingMode != 'PeerGroupPlaceholder' )
      & ! [X192: $int] :
        ? [X193: $int] :
          ( ~ $less(int_2147483647,X193)
          & ( 'Length'(X192) = X193 )
          & ~ $less(X193,0) )
      & ( 'System_ICloneable' != stringLiteral0 )
      & ( true_1 = x('System_String','System_Collections_Generic_IEnumerable_1___System_Char') )
      & ( 'System_String' != 'System_ICloneable' )
      & ( 'NonNullFieldsAreInitialized' != 'System_IConvertible' )
      & ( exposeVersion != 'System_Int64' )
      & ( ownerFrame != 'System_UInt64' )
      & ( exposeVersion != 'System_Boolean' )
      & ( sharingMode != 'System_Int32' )
      & ! [X43: $int,X44: $int] :
        ? [X45: $int] :
          ( ( typeof(X43) = X45 )
          & ( ( nullObject = X43 )
            | ( ( select2(X44,X43,localinv) = X45 )
              & ( select2(X44,X43,inv) = X45 ) )
            | ( true_1 != 'IsHeap'(X44) )
            | ( true_1 != x(X45,'System_Array') ) ) )
      & ( 'System_String' != 'System_IComparable_1___System_String' )
      & ( 'System_Object' != 'System_String' )
      & ! [X341: $int,X339: $int,X338: $int,X340: $int] :
          ( ( X338 = X339 )
          | ( 'ValueArrayGet'(X341,X338) = 'ValueArrayGet'('ValueArraySet'(X341,X339,X340),X338) ) )
      & ! [X204: $int,X205: $int] :
          ( ( x_2(X204,X205) = x_2($sum(X204,X205),X205) )
          | $less(X205,0)
          | $less(X204,0) )
      & ( 'ArrayCategoryValue' != 'System_Byte' )
      & ( 'System_Byte' != 'System_UInt32' )
      & ( 'System_Type' != 'System_IComparable_1___System_String' )
      & ( 'System_Object' != 'System_IComparable_1___System_String' )
      & ( 'ArrayCategoryInt' != 'System_UInt32' )
      & ( true_1 = x('System_String','System_Collections_IEnumerable') )
      & ( 'SharingMode_Unshared' != 'ArrayCategoryValue' )
      & ( elements != 'System_Char' )
      & ( inv != 'System_UIntPtr' )
      & ( 'System_Int16' != 'System_Int32' )
      & ( 'System_Boolean' != 'System_Char' )
      & ! [X116: $int,X117: $int,X115: $int] :
          ( ( 'ArrayCategoryInt' = 'ArrayCategory'(X116) )
          | ( true_1 != x(X116,'IntArray'(X115,X117)) ) )
      & ( 'ArrayCategoryNonNullRef' != 'System_SByte' )
      & ! [X267: $int] : ( 'ClassReprInv'('ClassRepr'(X267)) = X267 )
      & ( 'ArrayCategoryInt' != 'System_Array' )
      & ! [X6: $int,X5: $int,X7: $int] :
          ( ( nullObject = X5 )
          | ( 'Rank'(X5) = X6 )
          | ( true_1 != x(typeof(X5),'IntArray'(X7,X6)) ) )
      & ( elements != 'System_Int16' )
      & ! [X112: $int,X113: $int] :
        ? [X114: $int] :
          ( ( ~ $less(X113,0)
            | $less(0,X112)
            | ( ~ $less(0,X114)
              & $less(X113,X114) ) )
          & ( x_2(X112,X113) = X114 ) )
      & ( 'System_Object' != 'System_Collections_IEnumerable' )
      & ( ownerFrame != 'System_Object' )
      & ( 'ArrayCategoryInt' != stringLiteral0 )
      & ( inv != 'System_ICloneable' )
      & ( 'FirstConsistentOwner' != 'System_UInt32' )
      & ! [X188: $int,X189: $int] : ( 'ElementType'('RefArray'(X188,X189)) = X188 )
      & ( 'System_Collections_IEnumerable' != stringLiteral0 )
      & ( allocated != 'System_IComparable_1___System_String' )
      & ( ownerRef != 'System_Byte' )
      & ( 'System_Object' != 'System_UInt16' )
      & ( 'ArrayCategoryRef' != 'System_IComparable' )
      & ( true_1 = 'IsMemberlessType'('System_IComparable_1___System_String') )
      & ( allocated != 'System_Char' )
      & ( localinv != 'System_UInt16' )
      & ( 'System_Int16' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( allocated != 'System_Boolean' )
      & ( 'System_Array' != 'System_Byte' )
      & ! [X362: $int,X363: $int,X364: $int,X361: $int] :
          ( ( X362 = X364 )
          | ( 'RefArrayGet'('RefArraySet'(X363,X362,X361),X364) = 'RefArrayGet'(X363,X364) ) )
      & ( elements != 'System_ICloneable' )
      & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != stringLiteral0 )
      & ( exposeVersion != 'ArrayCategoryNonNullRef' )
      & ( true_1 = x('System_ICloneable','System_ICloneable') )
      & ! [X326: $int] :
          ( ( ~ $less(X326,0)
            & ~ $less(int_4294967295,X326) )
        <=> ( true_1 = 'InRange'(X326,'System_UInt32') ) )
      & ( exposeVersion != 'System_Type' )
      & ( 'System_UInt16' != 'System_IComparable_1___System_String' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Int32' )
      & ( sharingMode != 'Factorial' )
      & ( 'System_Type' != 'System_IConvertible' )
      & ( 'Factorial' = 'AsDirectSubClass'('Factorial',X0) )
      & $less(int_4294967295,int_9223372036854775807)
      & ( allocated != inv )
      & ( true_1 = x('System_IConvertible','System_IConvertible') )
      & ( 'System_UInt32' != 'System_Int64' )
      & ( 'ArrayCategoryInt' != 'ArrayCategoryNonNullRef' )
      & ! [X67: $int,X68: $int] :
          ( ( nullObject = 'As'(X68,X67) )
          | ( true_1 = 'Is'(X68,X67) ) )
      & ( 'System_Int64' != 'System_Collections_IEnumerable' )
      & ! [X122: $int,X125: $int,X124: $int,X123: $int] :
        ? [X126: $int] :
          ( ( 'Box'(X124,X126) = X126 )
          & ( 'UnboxedType'(X126) = X122 )
          & ( 'BoxFunc'(X124,X122,X125,X123) = X126 ) )
      & ( 'System_Char' != 'System_ICloneable' )
      & ( 'System_UInt32' != 'System_Collections_IEnumerable' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Byte' )
      & ( allocated != 'SharingMode_LockProtected' )
      & ( 'System_SByte' != 'System_UInt64' )
      & ( 'SharingMode_LockProtected' != 'System_UIntPtr' )
      & ( exposeVersion != 'System_IComparable_1___System_String' )
      & ( 'System_UIntPtr' != 'System_IntPtr' )
      & ! [X92: $int,X94: $int,X93: $int] :
          ( $less(X93,2)
          | ~ $less(X92,X94)
          | ( x_2(X94,X93) != x_2(X92,X93) )
          | ~ $less(X94,$sum(X92,X93)) )
      & ( 'System_Byte' != 'System_UInt64' )
      & ( 'System_Array' != 'System_IComparable_1___System_String' )
      & ( 'System_Boolean' != 'System_Int32' )
      & ( 'System_UInt32' != 'System_IEquatable_1___System_String' )
      & ( allocated != 'System_UIntPtr' )
      & ( allocated != 'System_Int64' )
      & ( exposeVersion != 'System_IConvertible' )
      & ( exposeVersion != 'Factorial' )
      & ( true_1 = x('System_Collections_IEnumerable','System_Collections_IEnumerable') )
      & ( 'System_UInt64' != 'System_Char' )
      & ! [X58: $int,X56: $int,X60: $int,X57: $int,X59: $int] :
          ( ( true_1 != 'IsHeap'(X59) )
          | ( nullObject != 'RefArrayGet'(select2(X59,X60,elements),X58) )
          | ( true_1 != x(typeof(X60),'NonNullRefArray'(X56,X57)) ) )
      & ( 'System_String' != 'System_UIntPtr' )
      & ( 'System_UInt32' != 'Factorial' )
      & ( sharingMode != 'System_String' )
      & ! [X136: $int,X135: $int,X134: $int] :
          ( ( true_1 != x(X135,'AsDirectSubClass'(X136,X134)) )
          | ( 'OneClassDown'(X135,X134) = X136 ) )
      & ( exposeVersion != 'System_Collections_IEnumerable' )
      & ( 'SharingMode_LockProtected' != 'System_Int16' )
      & ( 'System_Int32' != 'System_Int64' )
      & ( 'System_Array' != 'System_IComparable' )
      & ( exposeVersion != 'System_IEquatable_1___System_String' )
      & ( 'System_IntPtr' != 'System_IComparable_1___System_String' )
      & ( 'ArrayCategoryRef' != 'System_Array' )
      & ( true_1 = 'IncludeInMainFrameCondition'(allocated) )
      & ( 'PeerGroupPlaceholder' != 'System_UInt32' )
      & ( 'System_Char' != 'System_IComparable_1___System_String' )
      & ( 'System_Object' = 'DeclType'(exposeVersion) )
      & ( inv != 'System_String' )
      & ( inv != 'System_IEquatable_1___System_String' )
      & ( true_1 != 'IncludeInMainFrameCondition'(inv) )
      & ( 'System_IComparable_1___System_String' != 'System_Collections_IEnumerable' )
      & ( 'FirstConsistentOwner' != 'System_UIntPtr' )
      & ( 'SharingMode_LockProtected' != 'System_String' )
      & ( 'SharingMode_LockProtected' != ownerFrame )
      & ( 'System_ICloneable' != 'System_Collections_IEnumerable' )
      & ( exposeVersion != 'System_ICloneable' )
      & ( inv != localinv )
      & ( true_1 = x('System_IEquatable_1___System_String','System_Object') )
      & ( 'ArrayCategoryNonNullRef' != 'System_Int64' )
      & ( localinv != 'System_UIntPtr' )
      & ( localinv != 'System_Int32' )
      & ! [X222: $int,X223: $int,X224: $int] :
        ? [X225: $int] :
          ( ( ( true_1 != x(X224,X225) )
            | ( X224 = X225 ) )
          & ( 'IntArray'(X223,X222) = X225 ) )
      & ( 'System_UInt16' != 'System_Int64' )
      & ( 'System_SByte' != 'System_Char' )
      & $less(100000,int_2147483647)
      & ( ownerRef != 'System_UIntPtr' )
      & ( true_1 != 'IncludeInMainFrameCondition'(localinv) )
      & ( 'System_Array' != 'NonNullFieldsAreInitialized' )
      & ( 'PeerGroupPlaceholder' != 'ArrayCategoryValue' )
      & ( 'System_Array' != 'System_UInt16' )
      & ( 'PeerGroupPlaceholder' != 'Factorial' )
      & ( 'ArrayCategoryValue' != 'System_UIntPtr' )
      & ( localinv != 'ArrayCategoryRef' )
      & ! [X336: $int,X337: $int] :
          ( ( $less(X336,0)
            & $less(X337,0) )
          | ~ $less(and_1(X337,X336),0) )
      & ( 'System_String' != 'System_UInt64' )
      & ( true_1 = 'IsMemberlessType'('System_IEquatable_1___System_String') )
      & ! [X215: $int,X214: $int] : ( 0 = 'LBound'(X214,X215) )
      & ( ownerFrame != 'System_UIntPtr' )
      & ( elements != 'System_UInt32' )
      & ( 'System_Boolean' != 'System_IEquatable_1___System_String' )
      & ! [X190: $int,X191: $int] : ( 'System_Object' = typeof('ElementProxyStruct'(X191,X190)) )
      & ( ownerRef != 'System_Collections_IEnumerable' )
      & ( 'PeerGroupPlaceholder' != 'System_ICloneable' )
      & ( ownerRef != 'System_SByte' )
      & ( true_1 = 'IsValueType'('System_Boolean') )
      & ! [X315: $int,X316: $int] :
          ( $less(X316,1)
          | ( shr(X315,X316) = x_1(shr(X315,$sum(X316,$uminus(1))),2) ) )
      & ( ownerFrame != 'Factorial' )
      & ( elements != 'System_UIntPtr' )
      & ( exposeVersion != 'System_IntPtr' )
      & ( allocated != ownerRef )
      & ( 'System_Char' != 'System_IComparable' )
      & ! [X280: $int,X281: $int,X278: $int,X279: $int] :
          ( ( 'BoxFunc'(X281,X280,X278,X279) = X281 )
          | ( true_1 = 'IsValueType'('UnboxedType'(X281)) ) )
      & ( true_1 != 'IsStaticField'(allocated) )
      & ( 'System_IntPtr' != 'System_IComparable' )
      & ( 'FirstConsistentOwner' != 'System_IComparable_1___System_String' )
      & ( sharingMode != 'System_Object' )
      & ( true_1 = x('System_String','System_String') )
      & ( sharingMode != 'System_SByte' )
      & ( 'System_Byte' != 'System_Int32' )
      & ( 'SharingMode_Unshared' != 'System_Int64' )
      & ( true_1 != 'IsStaticField'(elements) )
      & ( true_1 = 'IsValueType'('System_Byte') )
      & ( allocated != 'PeerGroupPlaceholder' )
      & ( 'ArrayCategoryInt' != 'System_UInt16' )
      & ( 'System_Object' != 'System_IComparable' )
      & ( 'NonNullFieldsAreInitialized' != 'System_UInt32' )
      & ( 'System_Int64' != 'System_IComparable_1___System_String' )
      & ( 'SharingMode_Unshared' != 'Factorial' )
      & ( ownerFrame != 'System_UInt16' )
      & ! [X203: $int] : ( shl(X203,0) = X203 )
      & ! [X372: $int,X371: $int] : ( 'ElementType'('NonNullRefArray'(X372,X371)) = X372 )
      & ( 'ArrayCategoryInt' != 'Factorial' )
      & ( 'System_Boolean' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_String' != 'System_Collections_IEnumerable' )
      & ! [X158: $int,X159: $int] :
          ( ( shl(X159,X158) = $product(shl(X159,$sum(X158,$uminus(1))),2) )
          | $less(X158,1) )
      & ( 'ArrayCategoryNonNullRef' != 'System_Type' )
      & ( 'System_UInt32' != 'System_IConvertible' )
      & ( 'System_Array' != 'System_UInt32' )
      & ( allocated != 'System_UInt32' )
      & ( elements != 'System_Byte' )
      & ( localinv != 'System_Char' )
      & ( 'SharingMode_Unshared' != 'System_Type' )
      & ( 'System_SByte' != 'System_UIntPtr' )
      & ( exposeVersion != ownerFrame )
      & ( sharingMode != 'System_Array' )
      & ! [X23: $int] : ( nullObject != 'ClassRepr'(X23) )
      & ( 'ArrayCategoryInt' != 'System_IConvertible' )
      & ( 'System_Type' != 'System_Int32' )
      & ( 'ArrayCategoryNonNullRef' != 'System_IComparable' )
      & ( elements != ownerFrame )
      & ( 'System_IConvertible' != 'System_IEquatable_1___System_String' )
      & ( 'System_Array' != 'System_Char' )
      & ( allocated != 'ArrayCategoryValue' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Char' )
      & ( 'ArrayCategoryInt' != 'System_Object' )
      & ( exposeVersion != 'System_Char' )
      & ( 'SharingMode_Unshared' != 'FirstConsistentOwner' )
      & ( sharingMode != 'System_UInt16' )
      & ( 'System_SByte' != 'System_IEquatable_1___System_String' )
      & ( ownerRef != 'FirstConsistentOwner' )
      & ( 'System_String' = 'AsImmutable'('System_String') )
      & ( 'ArrayCategoryInt' != 'System_SByte' )
      & ( 'System_Object' != 'System_Int64' )
      & ( 'System_Object' != 'System_IntPtr' )
      & ( ownerFrame != 'System_SByte' )
      & ( 'System_Object' = X1 )
      & ( allocated != elements )
      & ( 'SharingMode_LockProtected' != 'System_Type' )
      & ( 'System_Int16' != 'System_IEquatable_1___System_String' )
      & ( 'System_SByte' != 'System_Byte' )
      & ! [X321: $int,X322: $int] :
          ( ( 'Box'('Unbox'(X322),X322) = X322 )
          | ( nullObject = 'BoxTester'(X322,X321) ) )
      & ( true_1 = x('System_String','System_IComparable') )
      & ( 'SharingMode_Unshared' != 'SharingMode_LockProtected' )
      & ( localinv != sharingMode )
      & ( 'SharingMode_LockProtected' != 'System_Collections_IEnumerable' )
      & ( 'ArrayCategoryRef' != 'System_Int32' )
      & ( 'ArrayCategoryInt' != 'System_Int64' )
      & ( 'System_Int64' != 'System_Char' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Char' )
      & ( 'SharingMode_LockProtected' != stringLiteral0 )
      & ( 'System_Char' != 'System_IConvertible' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'ArrayCategoryRef' != 'System_IComparable_1___System_String' )
      & ( 'SharingMode_Unshared' != 'ArrayCategoryNonNullRef' )
      & ( 'NonNullFieldsAreInitialized' != 'System_IComparable' )
      & ! [X266: $int] :
          ( ( ~ $less(X266,0)
            & $less(X266,65536) )
        <=> ( true_1 = 'InRange'(X266,'System_UInt16') ) )
      & ( elements != 'ArrayCategoryInt' )
      & ( 'Factorial' = 'AsMutable'('Factorial') )
      & ( 'SharingMode_LockProtected' != 'ArrayCategoryValue' )
      & ( inv != ownerRef )
      & ( 'System_Int64' != 'System_IComparable' )
      & ( 'SharingMode_Unshared' != 'ArrayCategoryInt' )
      & ( exposeVersion != ownerRef )
      & ( 'System_String' != 'System_Int16' )
      & ( elements != 'System_Int32' )
      & ( sharingMode != 'System_UInt32' )
      & ( 'ArrayCategoryRef' != 'System_UIntPtr' )
      & ! [X163: $int] : ( true_1 != x(typeof('ClassRepr'(X163)),'System_Object') )
      & ! [X236: $int,X233: $int,X235: $int,X234: $int] :
        ? [X237: $int] :
          ( ( ( nullObject = X237 )
            | ( true_1 != 'IsHeap'(X236) )
            | ( ( select2(X236,X237,ownerRef) = X233 )
              & ( select2(X236,X237,ownerFrame) = X235 ) ) )
          & ( select2(X236,X233,'AsRepField'(X234,X235)) = X237 ) )
      & ( 'ArrayCategoryNonNullRef' != 'System_UInt64' )
      & ( 'FirstConsistentOwner' != 'System_SByte' )
      & ( 'SharingMode_LockProtected' != 'System_IConvertible' )
      & ( 'System_String' != 'System_IConvertible' )
      & ( 'System_Int64' != 'System_IEquatable_1___System_String' )
      & ( 'ArrayCategoryRef' != 'System_String' )
      & ( 'SharingMode_LockProtected' != 'System_UInt64' )
      & ( 'SharingMode_LockProtected' != 'Factorial' )
      & ( 'PeerGroupPlaceholder' != 'System_String' )
      & ( inv != 'ArrayCategoryRef' )
      & ( 'PeerGroupPlaceholder' != 'System_Int16' )
      & ( 'System_IConvertible' != 'System_IComparable_1___System_String' )
      & ( 'System_IConvertible' != 'System_IComparable' )
      & ( $sum(int_m2147483648,1) = $sum(0,$uminus(int_2147483647)) )
      & ( inv != 'Factorial' )
      & ( 'System_IntPtr' != 'System_Collections_IEnumerable' )
      & ( 'ArrayCategoryValue' != stringLiteral0 )
      & ( elements != 'ArrayCategoryValue' )
      & ( 'NonNullFieldsAreInitialized' != 'System_IComparable_1___System_String' )
      & ( 'System_UInt32' != 'System_UIntPtr' )
      & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'Factorial' )
      & ( 'ArrayCategoryInt' != 'FirstConsistentOwner' )
      & ( 'System_IComparable_1___System_String' != 'Factorial' )
      & ( 'System_Array' != 'System_UIntPtr' )
      & ( true_1 = 'IncludeInMainFrameCondition'(exposeVersion) )
      & ( 'PeerGroupPlaceholder' != 'System_Byte' )
      & ( 'System_String' != 'System_Char' )
      & ( 'System_UIntPtr' != 'System_ICloneable' )
      & ( 'System_Object' != 'System_UIntPtr' )
      & ! [X73: $int,X74: $int,X75: $int] :
        ? [X76: $int] :
          ( ( ( ( true_1 = x(X76,X74) )
              & ( 'RefArray'(X76,X75) = X73 )
              & ( X73 != X74 ) )
            | ( true_1 != x(X73,'RefArray'(X74,X75)) ) )
          & ( 'ElementType'(X73) = X76 ) )
      & ( 'FirstConsistentOwner' != 'Factorial' )
      & ( 'FirstConsistentOwner' != 'System_ICloneable' )
      & ! [X344: $int,X343: $int] :
        ? [X345: $int] :
          ( ( true_1 = x(X345,X345) )
          & ( true_1 = x(X345,'System_Array') )
          & ( 'NonNullRefArray'(X343,X344) = X345 ) )
      & ( 'SharingMode_LockProtected' != 'FirstConsistentOwner' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Int16' )
      & ( sharingMode != 'ArrayCategoryRef' )
      & ( ownerFrame != 'System_Collections_IEnumerable' )
      & ! [X15: $int,X14: $int,X13: $int] :
          ( ( true_1 != 'InRange'(X14,X15) )
          | ( 'IntToInt'(X14,X13,X15) = X14 ) )
      & ( true_1 != 'IsImmutable'('Factorial') )
      & ! [X101: $int,X103: $int,X102: $int] :
          ( ( true_1 = 'StringEquals'(X101,X102) )
          | ( true_1 != 'StringEquals'(X103,X102) )
          | ( true_1 != 'StringEquals'(X101,X103) ) )
      & ! [X282: $int] : ( true_1 != 'IsMemberlessType'(typeof(X282)) )
      & ( 'System_Int16' != 'System_UInt64' )
      & ( 'System_UInt32' != 'System_IntPtr' )
      & ( sharingMode != 'ArrayCategoryValue' )
      & ( 'SharingMode_LockProtected' != 'System_SByte' )
      & ( 'SharingMode_Unshared' != 'PeerGroupPlaceholder' )
      & ( 'System_Type' != 'System_Int16' )
      & ( localinv != 'System_Object' )
      & ! [X349: $int,X348: $int] : ( 'ElementType'('ValueArray'(X348,X349)) = X348 )
      & ( ownerRef != 'System_Int32' )
      & ! [X105: $int,X104: $int,X106: $int] :
        ? [X107: $int] :
          ( ( 'ValueArray'(X104,X105) = X107 )
          & ( ( X106 = X107 )
            | ( true_1 != x(X106,X107) ) ) )
      & ( 'System_String' != 'System_IntPtr' )
      & ( 'ArrayCategoryRef' != stringLiteral0 )
      & ( 'ArrayCategoryRef' != 'Factorial' )
      & ( localinv != 'NonNullFieldsAreInitialized' )
      & ( allocated != 'System_String' )
      & ( 'System_Type' != 'System_SByte' )
      & ( 'System_UInt16' != 'System_Char' )
      & ( allocated != 'System_SByte' )
      & ! [X209: $int,X211: $int,X207: $int,X208: $int,X210: $int] :
        ? [X212: $int] :
          ( ( select2(X208,X211,'AsElementsRepField'(X210,X209,X207)) = X212 )
          & ? [X213: $int] :
              ( ( ( true_1 != 'IsHeap'(X208) )
                | ( nullObject = X212 )
                | ( ( select2(X208,X213,ownerRef) = X211 )
                  & ( select2(X208,X213,ownerFrame) = X209 ) ) )
              & ( 'ElementProxy'(X212,X207) = X213 ) ) )
      & ( 'SharingMode_LockProtected' != 'NonNullFieldsAreInitialized' )
      & ( allocated != 'System_IConvertible' )
      & ( ownerRef != 'System_IConvertible' )
      & ( 'ArrayCategoryValue' != 'System_Collections_IEnumerable' )
      & ( ownerFrame != 'System_UInt32' )
      & ( allocated != 'ArrayCategoryInt' )
      & ( 'System_Object' != 'System_UInt32' )
      & ( 'System_Char' != 'Factorial' )
      & ( 'System_Type' != 'System_IntPtr' )
      & ( elements != 'System_String' )
      & ( localinv != ownerFrame )
      & ( 'System_Int16' != 'System_UInt32' )
      & ( 'SharingMode_Unshared' != 'System_UInt64' )
      & ( localinv != stringLiteral0 )
      & ( 'ArrayCategoryValue' != 'FirstConsistentOwner' )
      & ( exposeVersion != sharingMode )
      & ( 'System_Boolean' != 'System_IConvertible' )
      & ( localinv != 'System_IntPtr' )
      & ! [X327: $int,X329: $int,X328: $int] :
          ( ( 'IfThenElse'(X329,X327,X328) = X328 )
          | ( true_1 = X329 ) )
      & ( ownerFrame != 'System_ICloneable' )
      & ( 'NonNullFieldsAreInitialized' != 'System_UIntPtr' )
      & ! [X28: $int,X30: $int,X29: $int] :
        ? [X31: $int] :
          ( ( ( true_1 != x(X31,X28) )
            | ( X28 = X31 )
            | ( true_1 = x('System_Array',X28) ) )
          & ( 'ValueArray'(X29,X30) = X31 ) )
      & ( sharingMode != 'NonNullFieldsAreInitialized' )
      & ( inv != 'NonNullFieldsAreInitialized' )
      & ( 'System_Object' != 'System_SByte' )
      & ( 'ArrayCategoryInt' != 'System_Int16' )
      & ! [X157: $int,X155: $int,X156: $int] :
          ( ( nullObject = X155 )
          | ( true_1 != x(typeof(X155),'ValueArray'(X156,X157)) )
          | ( 'Rank'(X155) = X157 ) )
      & ! [X36: $int,X34: $int,X35: $int] :
          ( ( 'Rank'(X35) = X34 )
          | ( nullObject = X35 )
          | ( true_1 != x(typeof(X35),'NonNullRefArray'(X36,X34)) ) )
      & ( 'PeerGroupPlaceholder' != stringLiteral0 )
      & ! [X239: $int,X238: $int] :
          ( ( ( 'AsImmutable'(X238) = X238 )
            & ( true_1 = 'IsImmutable'(X238) ) )
          | ( true_1 != x(X238,'AsImmutable'(X239)) ) )
      & ( 'System_Object' = 'DeclType'('NonNullFieldsAreInitialized') )
      & ( 'System_SByte' != 'System_IntPtr' )
      & ( 'System_SByte' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_UInt32' != 'System_Char' )
      & ( ownerRef != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( ownerFrame != 'ArrayCategoryValue' )
      & ( inv != 'System_Byte' )
      & ( inv != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ! [X248: $int,X247: $int] :
          ( ( 'AsRefField'(X248,X247) = X248 )
          | ( 'AsNonNullRefField'(X248,X247) != X248 ) )
      & ! [X299: $int,X298: $int,X300: $int] :
          ( ( true_1 = 'IsAllocated'(X300,'ValueArrayGet'(X299,X298)) )
          | ( true_1 != 'IsAllocated'(X300,X299) ) )
      & ( 'System_Byte' != 'System_Int64' )
      & ! [X143: $int,X144: $int] : ( 'System_Object' = typeof('ElementProxy'(X144,X143)) )
      & ( 'SharingMode_Unshared' != 'System_IEquatable_1___System_String' )
      & ( 'System_Array' != 'System_IEquatable_1___System_String' )
      & ( exposeVersion != 'NonNullFieldsAreInitialized' )
      & ( allocated != 'System_Int16' )
      & ( 'System_Array' != 'System_Int16' )
      & ( localinv != 'System_Boolean' )
      & ( sharingMode != 'ArrayCategoryInt' )
      & ( sharingMode != 'SharingMode_LockProtected' )
      & ( localinv != 'System_IComparable_1___System_String' )
      & ! [X85: $int] :
          ( ! [X87: $int,X86: $int] :
            ? [X88: $int] :
              ( ? [X89: $int] :
                  ( ( ( ( select2(X87,X88,localinv) = X89 )
                      & ( select2(X87,X88,inv) = X89 ) )
                    | ( true_1 != 'IsHeap'(X87) ) )
                  & ( typeof(X88) = X89 ) )
              & ( 'Box'(X86,X85) = X88 ) )
          | ( true_1 != 'IsValueType'('UnboxedType'(X85)) ) )
      & ( 'System_Int32' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_Array' != 'Factorial' )
      & ( ownerRef != 'System_UInt16' )
      & ( 'System_UInt16' != 'System_IEquatable_1___System_String' )
      & ( exposeVersion != 'System_Byte' )
      & ( 'System_SByte' != 'System_Int64' )
      & ( 'ArrayCategoryNonNullRef' != 'System_IComparable_1___System_String' )
      & ( inv != 'System_IntPtr' )
      & ( true_1 != 'IncludedInModifiesStar'(ownerFrame) )
      & ( 'System_UInt64' != 'System_IEquatable_1___System_String' )
      & ( 'SharingMode_Unshared' != 'System_UIntPtr' )
      & ( 'SharingMode_LockProtected' != ownerRef )
      & ( exposeVersion != 'PeerGroupPlaceholder' )
      & ( sharingMode != 'System_IEquatable_1___System_String' )
      & ( 'System_IComparable_1___System_String' = 'AsInterface'('System_IComparable_1___System_String') )
      & ( 'System_Boolean' != 'System_IComparable' )
      & ! [X98: $int,X99: $int] :
        ? [X100: $int] :
          ( ( 'Box'(X98,X99) = X100 )
          & ( ( X98 = X99 )
            | ( X99 != X100 )
            | ( true_1 != x('UnboxedType'(X100),'System_Object') ) ) )
      & ( elements != inv )
      & ( elements != 'System_IntPtr' )
      & ( 'System_UInt64' != 'System_UIntPtr' )
      & ( exposeVersion != 'System_UInt32' )
      & ! [X52: $int,X51: $int] : ( 'Unbox'('Box'(X52,X51)) = X52 )
      & ( 'ArrayCategoryInt' != 'System_IComparable_1___System_String' )
      & ( 'System_Int16' != 'System_UIntPtr' )
      & ( 'ArrayCategoryInt' != 'System_String' )
      & ( 'SharingMode_LockProtected' != 'System_Object' )
      & ( true_1 = 'IsMemberlessType'('System_ICloneable') )
      & ( 'System_Byte' != 'System_IComparable_1___System_String' )
      & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_IComparable' )
      & ( 'SharingMode_LockProtected' != 'ArrayCategoryNonNullRef' )
      & ( true_1 = x('System_IComparable','System_Object') )
      & ( ownerFrame != 'System_Int16' )
      & ! [X118: $int] :
          ( ( $less(X118,32768)
            & ~ $less(X118,$sum(0,$uminus(32768))) )
        <=> ( true_1 = 'InRange'(X118,'System_Int16') ) )
      & ! [X227: $int,X226: $int] :
        ? [X228: $int] :
          ( ( select2(X226,X227,'FirstConsistentOwner') = X228 )
          & ? [X229: $int,X230: $int,X231: $int,X232: $int] :
              ( ( select2(X226,X228,ownerFrame) = X229 )
              & ( select2(X226,X227,ownerFrame) = X232 )
              & ( select2(X226,X228,ownerRef) = X230 )
              & ( ( true_1 != select2(X226,X227,allocated) )
                | ( 'PeerGroupPlaceholder' = X232 )
                | ( select2(X226,X231,localinv) = 'BaseClass'(X232) )
                | ( nullObject = X227 )
                | ( true_1 != x(select2(X226,X231,inv),X232) )
                | ( ( true_1 = select2(X226,X228,allocated) )
                  & ( ( true_1 != x(select2(X226,X230,inv),X229) )
                    | ( 'PeerGroupPlaceholder' = X229 )
                    | ( 'BaseClass'(X229) = select2(X226,X230,localinv) ) )
                  & ( nullObject != X228 ) )
                | ( true_1 != 'IsHeap'(X226) ) )
              & ( select2(X226,X227,ownerRef) = X231 ) ) )
      & ( allocated != 'System_Byte' )
      & ( 'System_String' != 'Factorial' )
      & ( ownerFrame != 'System_Int32' )
      & ( sharingMode != 'System_IntPtr' )
      & ( 'System_Object' != 'System_IEquatable_1___System_String' )
      & ( localinv != 'System_IComparable' )
      & ( true_1 = 'IsValueType'('System_Int64') )
      & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_Collections_IEnumerable' )
      & ( true_1 = x('System_String','System_IEquatable_1___System_String') )
      & ( 'System_Int16' != 'System_IComparable' )
      & ( 'System_Type' != 'Factorial' )
      & ( 'ArrayCategoryRef' != 'FirstConsistentOwner' )
      & ( elements != exposeVersion )
      & ( 'ArrayCategoryInt' != 'System_UInt64' )
      & ( 'System_Byte' != 'System_IComparable' )
      & ( 'System_UInt64' != stringLiteral0 )
      & ! [X2: $int,X3: $int] :
        ? [X4: $int] :
          ( ( ~ $less(X2,32768)
            | $less(16,X3)
            | $less(X3,0)
            | $less(X2,0)
            | ( ~ $less(int_2147483647,X4)
              & ~ $less(X4,0) ) )
          & ( shl(X2,X3) = X4 ) )
      & ( sharingMode != 'System_Byte' )
      & ( 'ArrayCategoryValue' != 'System_IntPtr' )
      & ( 'ArrayCategoryNonNullRef' != 'FirstConsistentOwner' )
      & ( 'System_Int64' != 'Factorial' )
      & ( 'System_Int16' != 'System_IConvertible' )
      & ! [X346: $int] :
          ( ( $less(X346,128)
            & ~ $less(X346,$sum(0,$uminus(128))) )
        <=> ( true_1 = 'InRange'(X346,'System_SByte') ) )
      & ( localinv != 'System_String' )
      & ( inv != 'ArrayCategoryNonNullRef' )
      & ( 'SharingMode_Unshared' != 'System_IComparable_1___System_String' )
      & ( localinv != 'System_SByte' )
      & ! [X131: $int,X132: $int] :
        ? [X133: $int] :
          ( ( $sum(X132,$uminus(X131)) = X133 )
          & ( $less(X131,0)
            | $less(X133,0)
            | ( x_2(X133,X131) = x_2(X132,X131) ) ) )
      & ( 'ArrayCategoryRef' != 'System_Byte' )
      & ( 'System_IComparable' != stringLiteral0 )
      & ( 'System_IntPtr' != 'System_IEquatable_1___System_String' )
      & ( 'System_UInt32' != 'System_IComparable' )
      & ( 'System_String' != 'System_SByte' )
      & ( ownerFrame != 'System_String' )
      & ( 'SharingMode_LockProtected' != 'System_Int64' )
      & ( true_1 = 'IsMemberlessType'('System_Collections_Generic_IEnumerable_1___System_Char') )
      & ! [X245: $int,X246: $int,X244: $int] :
          ( ( true_1 != 'System_String_Equals_System_String_System_String'(X245,X246,X244) )
          | ( 'System_String_IsInterned_System_String_notnull'(X245,X244) = 'System_String_IsInterned_System_String_notnull'(X245,X246) )
          | ( nullObject = X246 )
          | ( nullObject = X244 ) )
      & ( 'System_Boolean' != stringLiteral0 )
      & ( 'ArrayCategoryNonNullRef' != 'System_Array' )
      & ( 'ArrayCategoryValue' != 'System_Char' )
      & ( 'FirstConsistentOwner' != 'System_UInt64' )
      & ( 'PeerGroupPlaceholder' != 'System_IntPtr' )
      & ( true_1 = 'IsValueType'('System_UInt64') )
      & ! [X180: $int,X179: $int,X181: $int,X182: $int] :
          ( ( 'IntArrayGet'('IntArraySet'(X182,X181,X179),X180) = 'IntArrayGet'(X182,X180) )
          | ( X180 = X181 ) )
      & ( 'ArrayCategoryValue' != 'System_IComparable_1___System_String' )
      & ( 'System_IConvertible' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( true_1 = x('System_ICloneable','System_Object') )
      & ( 'SharingMode_Unshared' != 'System_UInt16' )
      & ( ownerRef != 'System_Type' )
      & ( 'ArrayCategoryValue' != 'ArrayCategoryRef' )
      & ( 'System_Boolean' != 'System_Type' )
      & ( allocated != 'System_Type' )
      & ( 'System_Int32' != 'System_Collections_IEnumerable' )
      & ( 'System_Int64' != 'System_UInt64' )
      & ( localinv != 'ArrayCategoryInt' )
      & ( localinv != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( sharingMode != ownerRef )
      & ! [X324: $int,X323: $int] :
        ? [X325: $int] :
          ( ( min(X324,X323) = X325 )
          & ( ( X323 = X325 )
            | ( X324 = X325 ) )
          & ~ $less(X323,X325)
          & ~ $less(X324,X325) )
      & ! [X206: $int] : ( 'TypeName'('TypeObject'(X206)) = X206 )
      & ( true_1 = 'IsValueType'('System_Int32') )
      & ( 'ArrayCategoryNonNullRef' != 'System_Byte' )
      & ( allocated != 'System_ICloneable' )
      & ( elements != 'FirstConsistentOwner' )
      & ( 'ArrayCategoryInt' != 'System_UIntPtr' )
      & ( 'NonNullFieldsAreInitialized' != 'System_UInt64' )
      & ( allocated != 'System_IntPtr' )
      & ( 'System_Type' != 'System_Collections_IEnumerable' )
      & ! [X318: $int,X317: $int,X319: $int] :
        ? [X320: $int] :
          ( ( ( nullObject = X320 )
            | ( ( select2(X317,X320,ownerRef) = select2(X317,X319,ownerRef) )
              & ( select2(X317,X320,ownerFrame) = select2(X317,X319,ownerFrame) ) )
            | ( true_1 != 'IsHeap'(X317) ) )
          & ( select2(X317,X319,'AsPeerField'(X318)) = X320 ) )
      & ( 'System_Array' != 'System_Int64' )
      & ( localinv != 'System_Int64' )
      & ( 'SharingMode_Unshared' != 'System_String' )
      & ( true_1 = x('System_IConvertible','System_Object') )
      & ( 'System_SByte' != 'System_Int16' )
      & ( sharingMode != 'System_Boolean' )
      & ( 'SharingMode_Unshared' != 'NonNullFieldsAreInitialized' )
      & ( ownerRef != 'System_Boolean' )
      & ! [X55: $int] :
          ( ( true_1 != 'IsHeap'(X55) )
          | ( true_1 = select2(X55,stringLiteral0,allocated) ) )
      & ( 'System_IConvertible' != stringLiteral0 )
      & ( 'System_Int32' != 'System_UInt64' )
      & ( true_1 = 'IsValueType'('System_IntPtr') )
      & ( 'System_Object' != 'System_Int16' )
      & ( localinv != 'System_Int16' )
      & ( 'System_Byte' != 'System_UInt16' )
      & ( 'System_Int32' != 'System_IComparable' )
      & ( 'System_IConvertible' != 'System_Collections_IEnumerable' )
      & ( 'System_Array' != 'System_Type' )
      & ( 'System_Int32' != 'Factorial' )
      & ( 'System_Int16' != 'Factorial' )
      & ( 'SharingMode_Unshared' != 'System_IntPtr' )
      & ! [X306: $int,X305: $int] :
        ? [X307: $int] :
          ( ~ $less(X307,X305)
          & ( max(X306,X305) = X307 )
          & ~ $less(X307,X306)
          & ( ( X305 = X307 )
            | ( X306 = X307 ) ) )
      & ( 'System_Object' != stringLiteral0 )
      & ( 'FirstConsistentOwner' != 'System_IComparable' )
      & ( 'ArrayCategoryInt' != 'System_Int32' )
      & ( 'ArrayCategoryValue' != 'System_Boolean' )
      & ( elements != 'System_Int64' )
      & ( true_1 = 'IsValueType'('System_Int16') )
      & ( 'Factorial' != 'System_Collections_IEnumerable' )
      & ( true_1 != 'IncludeInMainFrameCondition'('FirstConsistentOwner') )
      & ( ownerRef != 'System_UInt32' )
      & ( 'FirstConsistentOwner' != 'System_IEquatable_1___System_String' )
      & ( 'SharingMode_Unshared' != 'ArrayCategoryRef' )
      & ( elements != 'System_IComparable_1___System_String' )
      & ( 'System_IEquatable_1___System_String' != 'System_IComparable' )
      & ( 'System_Type' != 'System_IComparable' )
      & ( true_1 = 'IncludeInMainFrameCondition'(elements) )
      & ( allocated != stringLiteral0 )
      & ( 'System_Int64' != 'System_IntPtr' )
      & ! [X342: $int] :
          ( ( stringLiteral0 = 'System_String_IsInterned_System_String_notnull'(X342,stringLiteral0) )
          | ( true_1 != 'IsHeap'(X342) ) )
      & ( 'System_UInt64' != 'System_IComparable' )
      & ! [X119: $int,X120: $int,X121: $int] :
          ( ( true_1 != 'IsHeap'(X120) )
          | ( true_1 != select2(X120,X119,allocated) )
          | ( true_1 = select2(X120,select2(X120,X119,X121),allocated) ) )
      & ( true_1 = x('System_String','System_IConvertible') )
      & ( 'System_ICloneable' != 'System_IConvertible' )
      & ( 'FirstConsistentOwner' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'ArrayCategoryValue' != 'System_UInt32' )
      & ( inv != 'ArrayCategoryValue' )
      & ( 'ArrayCategoryRef' != 'System_ICloneable' )
      & ( 'ArrayCategoryValue' != 'System_SByte' )
      & ( ownerFrame != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ! [X160: $int,X161: $int] :
          ( ( true_1 = select2(X161,'ClassRepr'(X160),allocated) )
          | ( true_1 != 'IsHeap'(X161) ) )
      & ( true_1 = x('System_Type','System_Object') )
      & ( elements != 'System_Type' )
      & ( 'System_IConvertible' = 'AsInterface'('System_IConvertible') )
      & ( 'SharingMode_LockProtected' != 'System_UInt16' )
      & ( 'PeerGroupPlaceholder' != 'System_UInt16' )
      & ! [X26: $int,X27: $int] : ( x_2(X26,X27) = $sum(X26,$uminus($product(x_1(X26,X27),X27))) )
      & ( 'PeerGroupPlaceholder' != 'FirstConsistentOwner' )
      & ( 'System_String' != 'FirstConsistentOwner' )
      & ( localinv != 'ArrayCategoryValue' )
      & ( ownerFrame != 'ArrayCategoryInt' )
      & ( exposeVersion != 'ArrayCategoryRef' )
      & ( 'System_UInt16' != 'System_IntPtr' )
      & ( 'ArrayCategoryValue' != 'System_String' )
      & ( 'System_String' != 'System_IEquatable_1___System_String' )
      & ( 'System_Array' != 'FirstConsistentOwner' )
      & ( inv != 'System_Char' )
      & ( 'ArrayCategoryNonNullRef' != 'System_UInt16' )
      & ( ownerFrame != 'System_IntPtr' )
      & ( 'System_Int16' != 'System_Char' )
      & ( 'ArrayCategoryValue' != 'System_IEquatable_1___System_String' )
      & ( 'SharingMode_LockProtected' != 'PeerGroupPlaceholder' )
      & ( 'SharingMode_LockProtected' != 'System_IEquatable_1___System_String' )
      & ! [X69: $int,X70: $int,X71: $int] :
        ? [X72: $int] :
          ( ( ( true_1 != 'NonNullRefArrayRaw'(X69,X71,X70) )
            | ( ( true_1 = x(X72,'System_Array') )
              & ( true_1 = x(X71,'ElementType'(X72)) )
              & ( 'Rank'(X69) = X70 ) ) )
          & ( typeof(X69) = X72 ) )
      & ! [X260: $int,X259: $int,X258: $int,X261: $int] :
          ( ( 'StructGet'('StructSet'(X259,X258,X261),X260) = 'StructGet'(X259,X260) )
          | ( X258 = X260 ) )
      & ( sharingMode != 'System_IComparable' )
      & ( 'StringLength'(stringLiteral0) = 19 )
      & ( inv != ownerFrame )
      & ( 'ArrayCategoryInt' != 'System_Type' )
      & ! [X356: $int,X358: $int,X357: $int] :
        ? [X359: $int,X360: $int] :
          ( ( ( X358 != X359 )
            | ( true_1 != x('UnboxedType'(X360),X359) )
            | ( X356 != X360 )
            | ( true_1 = x(typeof(X356),X358) ) )
          & ( 'Box'(X357,X356) = X360 )
          & ( 'AsInterface'(X358) = X359 ) )
      & ( exposeVersion != 'System_String' )
      & ( inv != 'System_Int64' )
      & ( 'NonNullFieldsAreInitialized' != 'FirstConsistentOwner' )
      & ( localinv != 'System_ICloneable' )
      & ( 'ArrayCategoryNonNullRef' != 'System_String' )
      & ( 'System_UIntPtr' != 'System_Collections_IEnumerable' )
      & ( elements != 'SharingMode_Unshared' )
      & ! [X257: $int,X255: $int,X256: $int] :
          ( ( true_1 != x(X256,'RefArray'(X255,X257)) )
          | ( 'ArrayCategoryRef' = 'ArrayCategory'(X256) ) )
      & ( ownerRef != 'ArrayCategoryNonNullRef' )
      & ( 'System_Char' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'ArrayCategoryValue' != 'Factorial' )
      & ( 'System_Int32' != 'System_UInt32' )
      & ( 'System_Object' != 'System_IConvertible' )
      & ( ( true_1 != 'PurityAxiomsCanBeAssumed' )
        | ! [X334: $int,X333: $int] :
          ? [X335: $int] :
            ( ( 'Factorial_recursiveFac_System_Int32'(X334,X333) = X335 )
            & ( ( true_1 != 'IsHeap'(X334) )
              | ( ( ( 0 != X333 )
                  | ( 1 = X335 ) )
                & ( ( 0 = X333 )
                  | ( $product(X333,'Factorial_recursiveFac_System_Int32'(X334,$sum(X333,$uminus(1)))) = X335 ) ) ) ) ) )
      & ( inv != 'System_UInt32' )
      & ! [X140: $int,X142: $int,X141: $int] :
          ( ( true_1 != x(typeof(X140),'RefArray'(X141,X142)) )
          | ( nullObject = X140 )
          | ( 'Rank'(X140) = X142 ) )
      & ( 'System_IEquatable_1___System_String' != 'System_IComparable_1___System_String' )
      & ( 'System_Array' != 'System_SByte' )
      & $less(int_9223372036854775807,int_18446744073709551615)
      & ( 'System_Boolean' != 'System_Object' )
      & ( 'System_Int64' != 'System_ICloneable' )
      & ( ownerRef != 'System_IComparable' )
      & ( 'System_UInt64' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ! [X291: $int] :
        ? [X292: $int] :
          ( ( true_1 = x(X291,X292) )
          & ( ( 'System_Object' = X291 )
            | ( X291 != X292 ) )
          & ( 'BaseClass'(X291) = X292 ) )
      & ! [X25: $int,X24: $int] :
          ( ( ( 'AsMutable'(X25) = X25 )
            & ( true_1 != 'IsImmutable'(X25) ) )
          | ( true_1 != x(X25,'AsMutable'(X24)) ) )
      & ( true_1 = 'IsValueType'('System_Char') )
      & ( 'FirstConsistentOwner' != 'System_Int32' )
      & ( 'PeerGroupPlaceholder' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'ArrayCategoryInt' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( ownerRef != 'System_Int16' )
      & ( sharingMode != 'System_Int16' )
      & ( elements != ownerRef )
      & ( 'System_ICloneable' != 'System_IComparable_1___System_String' )
      & ( 'NonNullFieldsAreInitialized' != 'System_SByte' )
      & ( 'System_IntPtr' != 'System_ICloneable' )
      & ( 'System_Char' != 'System_IntPtr' )
      & ( elements != 'ArrayCategoryRef' )
      & ( 'System_Int32' != 'System_IComparable_1___System_String' )
      & ( 'PeerGroupPlaceholder' != 'System_Collections_IEnumerable' )
      & ( ownerRef != 'PeerGroupPlaceholder' )
      & ! [X378: $int,X377: $int,X376: $int] :
        ? [X379: $int] :
          ( ( ( true_1 = x('System_Array',X376) )
            | ( true_1 != x(X379,X376) )
            | ( X376 = X379 ) )
          & ( 'IntArray'(X378,X377) = X379 ) )
      & ( 'System_Boolean' != 'System_SByte' )
      & ( localinv != 'System_Collections_IEnumerable' )
      & ( 'System_Collections_Generic_IEnumerable_1___System_Char' = 'AsInterface'('System_Collections_Generic_IEnumerable_1___System_Char') )
      & ( ownerFrame != 'System_IConvertible' )
      & ( 'System_Char' != 'System_UIntPtr' )
      & ( exposeVersion != 'System_Int16' )
      & ( 'ArrayCategoryRef' != 'System_Collections_IEnumerable' )
      & ( allocated != 'ArrayCategoryNonNullRef' )
      & ( true_1 != 'IsStaticField'(localinv) )
      & ( 'System_Boolean' != 'System_IntPtr' )
      & ( 'System_UInt64' != 'System_IConvertible' )
      & ( inv != 'System_Collections_IEnumerable' )
      & ( ownerFrame != 'System_IComparable' )
      & ( 'System_UInt16' != 'System_Int32' )
      & ( 'ArrayCategoryRef' != 'System_Int16' )
      & ! [X168: $int,X167: $int,X169: $int] :
        ? [X170: $int] :
          ( ( ( true_1 != x(X167,'NonNullRefArray'(X168,X169)) )
            | ( ( X167 != X168 )
              & ( 'NonNullRefArray'(X170,X169) = X167 )
              & ( true_1 = x(X170,X168) ) ) )
          & ( 'ElementType'(X167) = X170 ) )
      & ( elements != 'SharingMode_LockProtected' )
      & ( 'System_IComparable' != 'System_Collections_IEnumerable' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Int16' )
      & ( 'BaseClass'('Factorial') = X0 )
      & ( 'PeerGroupPlaceholder' != 'ArrayCategoryInt' )
      & ( 'System_Int64' != 'System_IConvertible' )
      & ! [X177: $int,X178: $int] :
          ( $less(X177,0)
          | ( x_2(X177,X178) = x_2($sum(X178,X177),X178) )
          | $less(X178,0) )
      & ( ownerRef != 'System_Int64' )
      & ( 'ArrayCategoryRef' != 'System_UInt32' )
      & ( 'System_Object' != 'System_Type' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Int64' )
      & ! [X186: $int,X187: $int] :
          ( ( true_1 != 'IsAllocated'(X187,X186) )
          | ( true_1 != 'IsHeap'(X187) )
          | ( true_1 = 'IsAllocated'(X187,'ElementProxy'(X186,$sum(0,$uminus(1)))) )
          | ( true_1 != x(typeof(X186),'System_Array') ) )
      & ( 'System_Array' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_Boolean' != 'System_Collections_IEnumerable' )
      & ( 'System_Boolean' != 'System_Byte' )
      & ( 'System_UInt32' != stringLiteral0 )
      & ( 'ArrayCategoryRef' != 'System_IEquatable_1___System_String' )
      & ( 'System_Boolean' != 'System_IComparable_1___System_String' )
      & ( true_1 = x('System_Collections_Generic_IEnumerable_1___System_Char','System_Object') )
      & ( 'System_IComparable' != 'Factorial' )
      & ( 'System_IEquatable_1___System_String' = 'AsInterface'('System_IEquatable_1___System_String') )
      & ( sharingMode != 'ArrayCategoryNonNullRef' )
      & ( 'PeerGroupPlaceholder' != 'System_IConvertible' )
      & ( 'System_Byte' != 'System_ICloneable' )
      & ( 'SharingMode_Unshared' != 'System_Int32' )
      & ( inv != 'System_Array' )
      & ! [X216: $int] : ~ $less('Rank'(X216),1)
      & ( sharingMode != 'System_IConvertible' )
      & ( allocated != 'Factorial' )
      & ( 'System_Array' != stringLiteral0 )
      & ( 'System_Int16' != 'System_IComparable_1___System_String' )
      & ( 'SharingMode_Unshared' != 'System_IConvertible' )
      & ( true_1 = 'IsValueType'('System_SByte') )
      & ( true_1 = 'IncludeInMainFrameCondition'(ownerRef) )
      & ( 'ArrayCategoryInt' != 'System_ICloneable' )
      & ( elements != localinv )
      & ( true_1 = 'IncludeInMainFrameCondition'(ownerFrame) )
      & ( 'System_UInt32' != 'System_IComparable_1___System_String' )
      & ( 'System_UIntPtr' != 'System_IComparable' )
      & ( 'SharingMode_LockProtected' != 'System_Boolean' )
      & ( exposeVersion != 'System_UInt16' )
      & ( 'System_String' != 'System_IComparable' )
      & ( 'SharingMode_LockProtected' != 'System_ICloneable' )
      & ( 'ArrayCategoryInt' != 'System_IntPtr' )
      & ( ownerRef != ownerFrame )
      & ( 'SharingMode_LockProtected' != 'System_IntPtr' )
      & ( 'System_Type' != 'System_String' )
      & ( elements != stringLiteral0 )
      & ( 'System_Object' != 'System_UInt64' )
      & ( inv != 'System_Boolean' )
      & ( 'NonNullFieldsAreInitialized' != 'System_UInt16' )
      & ( elements != 'PeerGroupPlaceholder' )
      & ( 'System_Array' != 'System_Boolean' )
      & ( 'System_UInt64' != 'System_IntPtr' )
      & ( true_1 = 'IsNotNull'(stringLiteral0,'System_String') )
      & ( 'System_Int16' != 'System_Int64' )
      & ( exposeVersion != 'System_UInt64' )
      & ( 'System_SByte' != 'System_IComparable_1___System_String' )
      & ! [X17: $int,X16: $int] :
        ? [X18: $int] :
          ( ( true_1 = x(X18,'System_Array') )
          & ( 'IntArray'(X16,X17) = X18 )
          & ( true_1 = x(X18,X18) ) )
      & ( true_1 = 'IsValueType'('System_UInt16') )
      & ( 'ArrayCategoryRef' != 'NonNullFieldsAreInitialized' )
      & ( inv != 'SharingMode_Unshared' )
      & ( elements != 'ArrayCategoryNonNullRef' )
      & ( localinv != 'PeerGroupPlaceholder' )
      & ( 'ArrayCategoryValue' != 'System_UInt64' )
      & ( true_1 = x('System_IComparable','System_IComparable') )
      & ( 'System_Boolean' != 'System_UInt32' )
      & ( inv != 'System_Int16' )
      & ( 'System_Object' != 'System_Byte' )
      & ( 'System_Type' != 'System_UInt16' )
      & ! [X176: $int] :
          ( ( true_1 = 'InRange'(X176,'System_Byte') )
        <=> ( $less(X176,256)
            & ~ $less(X176,0) ) )
      & ( 'ArrayCategoryInt' != 'System_IComparable' )
      & ( true_1 = 'IsMemberlessType'('System_IComparable') )
      & ( 'System_Array' != 'System_IConvertible' )
      & ( 'System_UIntPtr' != 'System_IComparable_1___System_String' )
      & ! [X148: $int,X146: $int,X147: $int,X149: $int] : ( 'ArrayIndexInvX'('ArrayIndex'(X146,X149,X148,X147)) = X148 )
      & ( $sum(int_m9223372036854775808,1) = $sum(0,$uminus(int_9223372036854775807)) )
      & ( allocated != ownerFrame )
      & ! [X127: $int,X128: $int] :
        ? [X129: $int] :
          ( ( x_2(X127,X128) = X129 )
          & ( $less(X127,0)
            | ( ~ $less(X129,0)
              & $less(X129,X128) )
            | ~ $less(0,X128) ) )
      & ( true_1 = x('System_Collections_Generic_IEnumerable_1___System_Char','System_Collections_Generic_IEnumerable_1___System_Char') )
      & ( sharingMode != 'System_UInt64' )
      & ( elements != 'Factorial' )
      & ! [X367: $int,X368: $int,X369: $int] :
        ? [X370: $int] :
          ( ( 'RefArrayGet'(select2(X367,X368,elements),X369) = X370 )
          & ( ( true_1 = x(typeof(X370),'ElementType'(typeof(X368))) )
            | ( nullObject = X370 )
            | ( true_1 != 'IsHeap'(X367) ) ) )
      & ( 'SharingMode_Unshared' != 'System_Byte' )
      & ! [X330: $int,X331: $int] :
        ? [X332: $int] :
          ( ( true_1 = x(X332,X332) )
          & ( true_1 = x(X332,'System_Array') )
          & ( 'RefArray'(X330,X331) = X332 ) )
      & ( 'SharingMode_LockProtected' != 'System_UInt32' )
      & ( localinv != 'System_IConvertible' )
      & ! [X374: $int,X373: $int,X375: $int] :
          ( ( true_1 != 'IsAllocated'(X374,X375) )
          | ( true_1 = 'IsAllocated'(X374,'RefArrayGet'(X375,X373)) ) )
      & ( inv != 'System_SByte' )
      & ( ownerRef != 'System_Array' )
      & ( 'ArrayCategoryNonNullRef' != 'NonNullFieldsAreInitialized' )
      & ( true_1 != 'IncludedInModifiesStar'(ownerRef) )
      & ( allocated != 'System_IComparable' )
      & ( 'System_Type' != 'System_UIntPtr' )
      & ! [X152: $int,X153: $int] :
        ? [X154: $int] :
          ( ( ~ $less(X152,0)
            | $less(X153,0)
            | ( $less(X154,$sum(0,$uminus(X152)))
              & ~ $less(X154,0) ) )
          & ( x_2(X153,X152) = X154 ) )
      & ( localinv != 'System_UInt32' )
      & $less(int_m9223372036854775808,int_m2147483648)
      & ( 'System_ICloneable' != 'System_IEquatable_1___System_String' )
      & ( 'System_UInt16' != stringLiteral0 )
      & ( allocated != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( ownerFrame != 'System_Char' )
      & ( localinv != 'System_UInt64' )
      & ( 'SharingMode_Unshared' != 'System_ICloneable' )
      & ( inv != 'System_IComparable' )
      & ( 'ArrayCategoryValue' != 'System_ICloneable' )
      & ( elements != 'System_Array' )
      & ( 'System_IComparable' = 'AsInterface'('System_IComparable') )
      & ( 'System_Int16' != stringLiteral0 )
      & ( 'System_Object' != 'NonNullFieldsAreInitialized' )
      & ( inv != 'System_IComparable_1___System_String' )
      & ! [X347: $int] : ~ $less('StringLength'(X347),0)
      & ! [X20: $int,X21: $int,X19: $int] :
          ( ( true_1 != 'IsHeap'(X20) )
          | ( true_1 = 'IsAllocated'(X20,select2(X20,X19,X21)) )
          | ( true_1 != select2(X20,X19,allocated) ) )
      & ( sharingMode != 'System_ICloneable' )
      & ! [X310: $int,X311: $int,X312: $int] :
        ? [X313: $int,X314: $int] :
          ( ( ( true_1 != x(select2(X310,X314,inv),X313) )
            | ( 'BaseClass'(X313) = select2(X310,X314,localinv) )
            | ( true_1 != select2(X310,X312,allocated) )
            | ( true_1 != 'IsHeap'(X310) )
            | ( 'PeerGroupPlaceholder' = X313 )
            | ( 'AsPureObject'(X312) != X312 )
            | ( nullObject = X312 )
            | ( select2(X310,X312,X311) = 'FieldDependsOnFCO'(X312,X311,select2(X310,select2(X310,X312,'FirstConsistentOwner'),exposeVersion)) ) )
          & ( select2(X310,X312,ownerFrame) = X313 )
          & ( select2(X310,X312,ownerRef) = X314 ) )
      & ( ownerFrame != 'System_Array' )
      & ( ownerRef != 'System_String' )
      & ( 'FirstConsistentOwner' != 'System_IConvertible' )
      & ! [X297: $int,X296: $int] :
          ( ( true_1 = select2(X297,X296,allocated) )
          | ( true_1 != 'IsAllocated'(X297,X296) ) )
      & ( 'System_IComparable_1___System_String' != 'System_IComparable' )
      & ( 'ArrayCategoryNonNullRef' != 'System_IConvertible' )
      & ( 'System_Int32' != 'System_IntPtr' )
      & ( sharingMode != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'ArrayCategoryNonNullRef' != 'System_UInt32' )
      & ( 'NonNullFieldsAreInitialized' != stringLiteral0 )
      & ( 'ArrayCategoryInt' != 'System_Byte' )
      & ( 'SharingMode_Unshared' != ownerFrame )
      & ( localinv != 'System_Type' )
      & ( 'SharingMode_Unshared' != 'System_Char' )
      & ( 'SharingMode_Unshared' != ownerRef )
      & ( ownerRef != 'ArrayCategoryValue' )
      & ( 'SharingMode_Unshared' != 'System_UInt32' )
      & ( 'System_Boolean' != 'System_UIntPtr' )
      & ( ownerRef != 'Factorial' )
      & ( true_1 = x('System_Array','System_Object') )
      & ( inv != 'System_Int32' )
      & ( 'ArrayCategoryRef' != 'System_Char' )
      & ( 'SharingMode_LockProtected' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_String' != stringLiteral0 )
      & ( 'System_String' != 'System_Int32' )
      & ( 'System_Boolean' != 'System_Int16' )
      & ( 'System_Int16' != 'System_UInt16' )
      & ( 'ArrayCategoryRef' != 'System_UInt16' )
      & ( 'System_String' != 'System_UInt16' )
      & ( 'System_Boolean' != 'System_ICloneable' )
      & ! [X109: $int,X108: $int,X111: $int,X110: $int] :
          ( ( true_1 != 'IsHeap'(X111) )
          | ( nullObject != select2(X111,X109,'AsNonNullRefField'(X108,X110)) )
          | ( nullObject = X109 )
          | ( ( true_1 != select2(X111,'BeingConstructed','NonNullFieldsAreInitialized') )
            & ( 'BeingConstructed' = X109 ) ) )
      & ( 'System_UInt16' != 'System_IComparable' )
      & ( 'PeerGroupPlaceholder' != 'System_Type' )
      & ( 'PeerGroupPlaceholder' != 'ArrayCategoryNonNullRef' )
      & ! [X301: $int,X302: $int] :
          ( ( 'PeerGroupPlaceholder' = select2(X302,'ClassRepr'(X301),ownerFrame) )
          | ( true_1 != 'IsHeap'(X302) ) )
      & ( exposeVersion != 'System_IComparable' )
      & ( 'System_UInt64' != 'System_ICloneable' )
      & ( ownerRef != 'System_Object' )
      & ( 'System_Object' != 'System_Char' )
      & ( inv != 'FirstConsistentOwner' )
      & ( 'System_UIntPtr' != stringLiteral0 )
      & ( 'System_Int16' != 'System_Collections_IEnumerable' )
      & ! [X285: $int,X284: $int,X283: $int] :
          ( ( ( true_1 = 'System_String_Equals_System_String_System_String'(X283,X284,X285) )
          <=> ( true_1 = 'StringEquals'(X284,X285) ) )
          & ( ( X284 != X285 )
            | ( true_1 = 'StringEquals'(X284,X285) ) )
          & ( ( true_1 = 'System_String_Equals_System_String_System_String'(X283,X284,X285) )
          <=> ( true_1 = 'StringEquals'(X285,X284) ) ) )
      & ( 'ArrayCategoryNonNullRef' != 'System_IntPtr' )
      & ( 'SharingMode_LockProtected' != 'ArrayCategoryRef' )
      & ( 'System_Array' != 'System_Int32' )
      & ( 'SharingMode_LockProtected' != 'System_Int32' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Object' )
      & ( inv != 'System_UInt64' )
      & ( 'System_Int16' != 'System_ICloneable' )
      & ( 'FirstConsistentOwner' != 'System_Int64' )
      & ( ownerRef != 'System_IntPtr' )
      & ( inv != 'System_UInt16' )
      & ( 'System_IEquatable_1___System_String' != stringLiteral0 )
      & ( 'System_Boolean' != 'System_UInt16' )
      & ( 'ArrayCategoryInt' != 'NonNullFieldsAreInitialized' )
      & ( elements != 'System_Boolean' )
      & ( elements != 'System_SByte' )
      & ! [X82: $int,X84: $int,X83: $int] :
          ( ( 'ArrayCategoryNonNullRef' = 'ArrayCategory'(X82) )
          | ( true_1 != x(X82,'NonNullRefArray'(X83,X84)) ) )
      & ! [X270: $int,X271: $int] :
          ( ( nullObject = X270 )
          | ( true_1 != x(typeof(X270),'AsImmutable'(X271)) )
          | ( 'BeingConstructed' = X270 )
          | ! [X272: $int] :
            ? [X273: $int] :
              ( ( ( ! [X274: $int] :
                      ( ( X270 = X274 )
                      | ( 'AsOwner'(X270,select2(X272,X274,ownerRef)) != X270 )
                      | ( 'PeerGroupPlaceholder' != select2(X272,X274,ownerFrame) ) )
                  & ( 'PeerGroupPlaceholder' = select2(X272,X270,ownerFrame) )
                  & ( select2(X272,X270,inv) = X273 )
                  & ( 'AsOwner'(X270,select2(X272,X270,ownerRef)) = X270 )
                  & ( select2(X272,X270,localinv) = X273 ) )
                | ( true_1 != 'IsHeap'(X272) ) )
              & ( typeof(X270) = X273 ) ) )
      & ( allocated != exposeVersion )
      & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_IComparable_1___System_String' )
      & ( 'PeerGroupPlaceholder' != 'System_Boolean' )
      & ( 'SharingMode_Unshared' != 'System_Boolean' )
      & ( 'System_UInt32' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_IEquatable_1___System_String' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'SharingMode_LockProtected' != 'System_Array' )
      & ( ownerFrame != 'System_Byte' )
      & ( 'ArrayCategoryRef' != 'System_Object' )
      & ( true_1 = x('Factorial','Factorial') )
      & ( 'System_Byte' != 'System_Int16' )
      & ( 'ArrayCategoryRef' != 'System_Type' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Int32' )
      & ( 'ArrayCategoryValue' != 'System_Int64' )
      & ( true_1 = x('System_IComparable_1___System_String','System_Object') )
      & ! [X90: $int,X91: $int] : ( 'Factorial_recursiveFac_System_Int32'(X90,X91) = 'Factorial_recursiveFac_System_Int32_1'(X91) )
      & ( 'System_Byte' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( ownerFrame != 'System_Boolean' )
      & ( 'SharingMode_Unshared' != 'System_IComparable' )
      & ( 'System_Int32' != 'System_UIntPtr' )
      & ( ownerFrame != 'System_Int64' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Collections_IEnumerable' )
      & ( 'System_UIntPtr' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ! [X145: $int] :
          ( ( true_1 = 'InRange'(X145,'System_Int64') )
        <=> ( ~ $less(int_9223372036854775807,X145)
            & ~ $less(X145,int_m9223372036854775808) ) )
      & ( 'System_UIntPtr' != 'Factorial' )
      & ( 'System_Int64' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_UInt16' != 'Factorial' )
      & ( 'System_UInt32' != 'System_ICloneable' )
      & ( 'System_String' != 'System_UInt32' )
      & ( 'System_Array' != 'System_ICloneable' )
      & ( 'System_Array' != 'System_Object' )
      & ! [X365: $int,X366: $int] : ( 'ElementType'('IntArray'(X366,X365)) = X366 )
      & ( localinv != 'SharingMode_LockProtected' )
      & ! [X242: $int,X243: $int,X241: $int,X240: $int] :
          ( ( true_1 != 'IsHeap'(X240) )
          | ( true_1 = 'Is'(select2(X240,X241,'AsRefField'(X243,X242)),X242) ) )
      & ( localinv != 'FirstConsistentOwner' )
      & ( true_1 = 'IncludedInModifiesStar'(exposeVersion) )
      & ( 'System_Array' != 'System_String' )
      & ( 'System_Byte' != 'System_IConvertible' )
      & ( ownerFrame != stringLiteral0 )
      & ( 'System_Boolean' != 'Factorial' )
      & ( elements != 'System_IConvertible' )
      & ( true_1 = 'IsValueType'('System_UInt32') )
      & ( 'ArrayCategoryRef' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_Object' != 'System_ICloneable' )
      & ( 'NonNullFieldsAreInitialized' != 'System_String' )
      & ( 'ArrayCategoryValue' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( inv != 'System_Type' )
      & ( localinv != 'System_IEquatable_1___System_String' )
      & ( inv != 'System_IConvertible' )
      & ! [X162: $int] : ( true_1 = 'IsNotNull'('TypeObject'(X162),'System_Type') )
      & ( 'ArrayCategoryValue' != 'System_Array' )
      & ( 'System_Array' != 'System_IntPtr' )
      & ( 'ArrayCategoryRef' != 'System_Boolean' )
      & ( 'SharingMode_Unshared' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( true_1 = x('System_String','System_ICloneable') )
      & ( 'System_UInt16' != 'System_Collections_IEnumerable' )
      & ( 'ArrayCategoryValue' != 'System_UInt16' )
      & ( 'System_IEquatable_1___System_String' != 'Factorial' )
      & ( 'System_UInt16' != 'System_UInt64' )
      & ! [X171: $int,X172: $int] : ~ $less('DimLength'(X171,X172),0)
      & ( sharingMode != stringLiteral0 )
      & ( 'System_IntPtr' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Collections_IEnumerable' )
      & ( 'System_Byte' != 'System_Collections_IEnumerable' )
      & ( 'System_UIntPtr' != 'System_IConvertible' )
      & ( 'PeerGroupPlaceholder' != 'System_UInt64' )
      & ( 'System_Object' != 'Factorial' )
      & ( sharingMode != 'FirstConsistentOwner' )
      & ! [X95: $int] :
          ( ( true_1 != 'IsValueType'(X95) )
          | ( ! [X96: $int] :
                ( ( true_1 != x(X95,X96) )
                | ( X95 = X96 ) )
            & ! [X97: $int] :
                ( ( X95 = X97 )
                | ( true_1 != x(X97,X95) ) ) ) )
      & ( ownerRef != 'System_Char' )
      & ( 'System_Boolean' != 'System_String' )
      & ( 'ArrayCategoryNonNullRef' != 'Factorial' )
      & ( 'System_ICloneable' != 'Factorial' )
      & ! [X46: $int] :
          ( ( true_1 = 'InRange'(X46,'System_UInt64') )
        <=> ( ~ $less(int_18446744073709551615,X46)
            & ~ $less(X46,0) ) ) ),
    inference(flattening,[],[f33]) ).

tff(f40,plain,
    ? [X1: $int,X0: $int] :
      ( ( 'ArrayCategoryInt' != 'System_Boolean' )
      & ( 'System_String' != 'System_Int64' )
      & ( true_1 = 'IsMemberlessType'('System_Collections_IEnumerable') )
      & ( true_1 = 'IsImmutable'('System_String') )
      & ( elements != sharingMode )
      & ! [X295: $int,X294: $int,X293: $int] :
          ( ( true_1 != 'IsHeap'(X293) )
          | ( true_1 = 'InRange'('IntArrayGet'(select2(X293,X295,elements),X294),'ElementType'(typeof(X295))) ) )
      & ( inv != sharingMode )
      & ( 'System_Object' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_String' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( exposeVersion != 'FirstConsistentOwner' )
      & ( 'System_Type' != 'System_Char' )
      & ( allocated != 'System_Array' )
      & ! [X251: $int,X250: $int,X249: $int] : ( 'IntArrayGet'('IntArraySet'(X250,X251,X249),X251) = X249 )
      & ( 'PeerGroupPlaceholder' != 'System_IComparable_1___System_String' )
      & ( 'ArrayCategoryValue' != 'System_Int32' )
      & ( 'ArrayCategoryValue' != 'System_Object' )
      & ( localinv != 'System_Byte' )
      & ( 'System_SByte' != 'System_ICloneable' )
      & ( 'SharingMode_Unshared' != stringLiteral0 )
      & ( true_1 != 'IsStaticField'(exposeVersion) )
      & ! [X65: $int,X66: $int,X64: $int] :
          ( ( true_1 = x('NonNullRefArray'(X65,X66),'NonNullRefArray'(X64,X66)) )
          | ( true_1 != x(X65,X64) ) )
      & ( 'System_Int32' != 'System_Char' )
      & ! [X252: $int,X253: $int,X254: $int] : ( 'RefArrayGet'('RefArraySet'(X252,X253,X254),X253) = X254 )
      & ( sharingMode != ownerFrame )
      & ( 'NonNullFieldsAreInitialized' != 'System_ICloneable' )
      & ( localinv != 'Factorial' )
      & ( ownerFrame != 'FirstConsistentOwner' )
      & ( 'System_SByte' != 'System_Int32' )
      & ( inv != 'ArrayCategoryInt' )
      & ( 'System_Type' != 'System_IEquatable_1___System_String' )
      & ! [X198: $int,X200: $int,X197: $int,X199: $int] :
        ? [X201: $int] :
          ( ( select2(X197,X199,'AsElementsPeerField'(X198,X200)) = X201 )
          & ? [X202: $int] :
              ( ( 'ElementProxy'(X201,X200) = X202 )
              & ( ( nullObject = X201 )
                | ( true_1 != 'IsHeap'(X197) )
                | ( ( select2(X197,X202,ownerRef) = select2(X197,X199,ownerRef) )
                  & ( select2(X197,X202,ownerFrame) = select2(X197,X199,ownerFrame) ) ) ) ) )
      & ! [X80: $int,X79: $int] :
        ? [X81: $int] :
          ( ( ( ~ $less(X81,0)
              & ~ $less($sum(X80,X79),X81) )
            | $less(X80,0)
            | $less(X79,0) )
          & ( or_1(X80,X79) = X81 ) )
      & ( 'FirstConsistentOwner' != 'System_UInt16' )
      & ( 'System_UInt64' != 'System_Collections_IEnumerable' )
      & ( sharingMode != 'System_Type' )
      & ( 'FirstConsistentOwner' != 'System_Int16' )
      & ( sharingMode != 'System_IComparable_1___System_String' )
      & ( 'SharingMode_LockProtected' != 'ArrayCategoryInt' )
      & ( 'SharingMode_Unshared' != 'System_SByte' )
      & ( true_1 = 'IsValueType'('System_UIntPtr') )
      & ( allocated != localinv )
      & ! [X33: $int,X32: $int] :
          ( ( ( ( true_1 = 'Is'(X32,X33) )
              & ( nullObject != X32 ) )
            | ( true_1 != 'IsNotNull'(X32,X33) ) )
          & ( ( true_1 = 'IsNotNull'(X32,X33) )
            | ( true_1 != 'Is'(X32,X33) )
            | ( nullObject = X32 ) ) )
      & ( 'SharingMode_Unshared' != 'System_Collections_IEnumerable' )
      & ( 'ArrayCategoryValue' != 'ArrayCategoryInt' )
      & ( 'System_ICloneable' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_Type' != 'System_UInt64' )
      & ( sharingMode != 'System_UIntPtr' )
      & ( 'ArrayCategoryInt' != 'ArrayCategoryRef' )
      & ( 'System_String' = 'AsDirectSubClass'('System_String',X1) )
      & ( 'ArrayCategoryValue' != 'NonNullFieldsAreInitialized' )
      & ( true_1 = x('System_IEquatable_1___System_String','System_IEquatable_1___System_String') )
      & ( 'System_Type' != 'System_UInt32' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( true_1 = x('System_Collections_Generic_IEnumerable_1___System_Char','System_Collections_IEnumerable') )
      & ! [X130: $int] :
          ( ( true_1 != x(X130,'System_String') )
          | ( 'System_String' = X130 ) )
      & ( ownerFrame != 'System_IComparable_1___System_String' )
      & ( 'System_Object' != 'System_Int32' )
      & ( 'System_Object' != 'FirstConsistentOwner' )
      & ( 'PeerGroupPlaceholder' != 'System_Object' )
      & ( exposeVersion != stringLiteral0 )
      & ( 'System_UInt64' != 'System_IComparable_1___System_String' )
      & ( allocated != 'System_Object' )
      & ( 'System_Type' != 'FirstConsistentOwner' )
      & ( exposeVersion != 'SharingMode_LockProtected' )
      & ! [X289: $int,X287: $int,X288: $int,X286: $int] :
          ( ( true_1 != 'IsHeap'(X287) )
          | ( true_1 = 'InRange'(select2(X287,X286,'AsRangeField'(X288,X289)),X289) ) )
      & ( 'System_Type' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'ArrayCategoryValue' != 'System_Int16' )
      & ( allocated != 'FirstConsistentOwner' )
      & ! [X22: $int] :
          ( ( ( $less(X22,65536)
              & ~ $less(X22,0) )
            | ( true_1 != 'InRange'(X22,'System_Char') ) )
          & ( ( true_1 = 'InRange'(X22,'System_Char') )
            | ~ $less(X22,65536)
            | $less(X22,0) ) )
      & ( 'System_Byte' != 'System_IntPtr' )
      & ! [X290: $int] :
          ( ( ( ~ $less(int_2147483647,X290)
              & ~ $less(X290,int_m2147483648) )
            | ( true_1 != 'InRange'(X290,'System_Int32') ) )
          & ( ( true_1 = 'InRange'(X290,'System_Int32') )
            | $less(int_2147483647,X290)
            | $less(X290,int_m2147483648) ) )
      & ( 'System_UIntPtr' != 'System_IEquatable_1___System_String' )
      & ! [X174: $int,X173: $int] :
        ? [X175: $int] :
          ( ( x_2(X173,X174) = X175 )
          & ( $less(0,X173)
            | ~ $less(0,X174)
            | ( ~ $less(0,X175)
              & $less($sum(0,$uminus(X174)),X175) ) ) )
      & ( 'System_IEquatable_1___System_String' != 'System_Collections_IEnumerable' )
      & ( 'System_UInt16' != 'System_IConvertible' )
      & ! [X78: $int,X77: $int] : ( 'UBound'(X78,X77) = $sum('DimLength'(X78,X77),$uminus(1)) )
      & ( 'System_Int64' != stringLiteral0 )
      & ( 'NonNullFieldsAreInitialized' != 'Factorial' )
      & ( 'ArrayCategoryNonNullRef' != 'System_ICloneable' )
      & ( 'ArrayCategoryRef' != 'System_SByte' )
      & ( exposeVersion != 'SharingMode_Unshared' )
      & ( 'ArrayCategoryInt' != 'System_IEquatable_1___System_String' )
      & ( 'System_Int32' != 'System_ICloneable' )
      & ( ownerRef != 'NonNullFieldsAreInitialized' )
      & ( exposeVersion != 'System_Int32' )
      & ( 'ArrayCategoryRef' != 'System_IConvertible' )
      & ( 'BaseClass'('System_String') = X1 )
      & ! [X303: $int,X304: $int] :
          ( ( ( nullObject != 'BoxTester'(X303,X304) )
            | ( 'UnboxedType'(X303) != X304 ) )
          & ( ( 'UnboxedType'(X303) = X304 )
            | ( nullObject = 'BoxTester'(X303,X304) ) ) )
      & ( 'PeerGroupPlaceholder' != 'System_Array' )
      & $less(int_m2147483648,$sum(0,$uminus(100000)))
      & ( 'System_IntPtr' != stringLiteral0 )
      & ! [X62: $int,X61: $int,X63: $int] :
          ( ( 'IfThenElse'(X63,X62,X61) = X62 )
          | ( true_1 != X63 ) )
      & ( ownerRef != 'System_ICloneable' )
      & ( 'ArrayCategoryInt' != 'System_Collections_IEnumerable' )
      & ( 'System_Type' != stringLiteral0 )
      & ( 'System_Byte' != 'System_IEquatable_1___System_String' )
      & ( 'ArrayCategoryValue' != 'ArrayCategoryNonNullRef' )
      & ( true_1 != 'IsImmutable'('System_Object') )
      & ( 'System_SByte' != stringLiteral0 )
      & ( ownerFrame != 'ArrayCategoryNonNullRef' )
      & ( elements != 'System_IEquatable_1___System_String' )
      & ( localinv != ownerRef )
      & ( localinv != exposeVersion )
      & ( 'ArrayCategoryRef' != 'System_Int64' )
      & ( 'System_Collections_IEnumerable' = 'AsInterface'('System_Collections_IEnumerable') )
      & ! [X217: $int,X218: $int,X219: $int] :
        ? [X220: $int] :
          ( ( 'ElementType'(X219) = X220 )
          & ( ( true_1 = x('System_Array',X219) )
            | ( true_1 != x('NonNullRefArray'(X218,X217),X219) )
            | ( ( 'NonNullRefArray'(X220,X217) = X219 )
              & ( true_1 = x(X218,X220) ) ) ) )
      & ( true_1 = 'IsMemberlessType'('System_IConvertible') )
      & ( 'SharingMode_LockProtected' != 'System_Char' )
      & ( 'SharingMode_LockProtected' != 'System_IComparable' )
      & ( true_1 = x('System_Collections_IEnumerable','System_Object') )
      & ( 'PeerGroupPlaceholder' != 'System_Char' )
      & ! [X42: $int] : ( shr(X42,0) = X42 )
      & ( localinv != 'ArrayCategoryNonNullRef' )
      & ( localinv != 'System_Array' )
      & ( 'System_ICloneable' = 'AsInterface'('System_ICloneable') )
      & ( 'ArrayCategoryRef' != 'ArrayCategoryNonNullRef' )
      & ( 'System_Byte' != stringLiteral0 )
      & ( true_1 = x('System_IComparable_1___System_String','System_IComparable_1___System_String') )
      & ( 'System_Int64' != 'System_UIntPtr' )
      & ( allocated != 'System_UInt16' )
      & ! [X185: $int,X183: $int,X184: $int] :
          ( ( true_1 != 'IsAllocated'(X183,X184) )
          | ( true_1 = 'IsAllocated'(X183,'StructGet'(X184,X185)) ) )
      & ( 'SharingMode_LockProtected' != 'System_IComparable_1___System_String' )
      & ( 'ArrayCategoryValue' != 'System_Type' )
      & ( elements != 'System_UInt16' )
      & ( 'PeerGroupPlaceholder' != 'System_SByte' )
      & ( ownerRef != 'ArrayCategoryInt' )
      & ( allocated != 'SharingMode_Unshared' )
      & ( 'System_Int16' != 'System_IntPtr' )
      & ( 'PeerGroupPlaceholder' != 'NonNullFieldsAreInitialized' )
      & ( 'PeerGroupPlaceholder' != 'ArrayCategoryRef' )
      & ( ownerFrame != 'NonNullFieldsAreInitialized' )
      & ( ownerRef != stringLiteral0 )
      & ( exposeVersion != 'System_SByte' )
      & ( inv != exposeVersion )
      & ( 'System_IntPtr' != 'System_IConvertible' )
      & ( 'ArrayCategoryInt' != 'System_Char' )
      & ( 'ArrayCategoryNonNullRef' != 'System_UIntPtr' )
      & ( inv != stringLiteral0 )
      & ( allocated != sharingMode )
      & ( ownerFrame != 'ArrayCategoryRef' )
      & ( true_1 = 'IncludedInModifiesStar'(elements) )
      & ! [X355: $int,X353: $int,X354: $int] :
          ( ( ( true_1 = 'System_String_Equals_System_String_System_String'(X355,X354,X353) )
            | ( true_1 != 'System_String_Equals_System_String'(X355,X354,X353) ) )
          & ( ( true_1 = 'System_String_Equals_System_String'(X355,X354,X353) )
            | ( true_1 != 'System_String_Equals_System_String_System_String'(X355,X354,X353) ) ) )
      & ( 'ArrayCategoryNonNullRef' != 'System_IEquatable_1___System_String' )
      & ( 'PeerGroupPlaceholder' != 'System_Int64' )
      & ( elements != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_Array' != 'System_UInt64' )
      & ( 'System_Type' != 'System_Int64' )
      & ( exposeVersion != 'System_UIntPtr' )
      & ( ownerRef != 'System_UInt64' )
      & ( 'System_Type' != 'System_ICloneable' )
      & ( 'System_Byte' != 'System_Char' )
      & ( 'SharingMode_Unshared' != 'System_Object' )
      & ( inv != 'PeerGroupPlaceholder' )
      & ( sharingMode != 'System_Collections_IEnumerable' )
      & ( ownerRef != 'ArrayCategoryRef' )
      & ( 'NonNullFieldsAreInitialized' != 'System_IntPtr' )
      & ( 'System_UInt16' != 'System_UIntPtr' )
      & ! [X264: $int,X263: $int,X262: $int] :
        ? [X265: $int] :
          ( ( 'ElementType'(X262) = X265 )
          & ( ( true_1 = x('System_Array',X262) )
            | ( ( 'RefArray'(X265,X264) = X262 )
              & ( true_1 = x(X263,X265) ) )
            | ( true_1 != x('RefArray'(X263,X264),X262) ) ) )
      & ( exposeVersion != 'System_Array' )
      & ( ownerRef != 'System_IComparable_1___System_String' )
      & ( elements != 'NonNullFieldsAreInitialized' )
      & ( 'System_UInt32' != 'System_UInt64' )
      & ( ownerFrame != 'System_Type' )
      & ( exposeVersion != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & $less(int_2147483647,int_4294967295)
      & ( inv != 'System_Object' )
      & ( allocated != 'System_Int32' )
      & ( 'System_Byte' != 'System_UIntPtr' )
      & ( allocated != 'System_IEquatable_1___System_String' )
      & ( 'System_String' != 'System_Byte' )
      & ( 'System_Type' != 'NonNullFieldsAreInitialized' )
      & ( 'SharingMode_Unshared' != 'System_Array' )
      & ( 'ArrayCategoryRef' != 'System_UInt64' )
      & ( 'System_Char' != stringLiteral0 )
      & ( 'SharingMode_LockProtected' != 'System_Byte' )
      & ( 'System_IntPtr' != 'Factorial' )
      & ! [X221: $int] :
          ( ( 'DimLength'(X221,0) = 'Length'(X221) )
          | ( 1 != 'Rank'(X221) ) )
      & ! [X150: $int,X151: $int] :
          ( ( true_1 != 'Is'(X150,X151) )
          | ( 'As'(X150,X151) = X150 ) )
      & ( 'FirstConsistentOwner' != 'System_Char' )
      & ( 'ArrayCategoryNonNullRef' != stringLiteral0 )
      & ( 'System_Array' != 'System_Collections_IEnumerable' )
      & ! [X10: $int,X8: $int,X9: $int] :
        ? [X12: $int,X11: $int] :
          ( ( ( true_1 != x(typeof(X10),'System_Array') )
            | ( nullObject = X11 )
            | ( ( select2(X8,X11,ownerRef) = select2(X8,X12,ownerRef) )
              & ( select2(X8,X12,ownerFrame) = select2(X8,X11,ownerFrame) ) )
            | ( true_1 != 'IsHeap'(X8) )
            | ( true_1 = 'IsImmutable'(typeof(X11)) ) )
          & ( 'ElementProxy'(X10,$sum(0,$uminus(1))) = X12 )
          & ( 'RefArrayGet'(select2(X8,X10,elements),X9) = X11 ) )
      & ( 'PeerGroupPlaceholder' != 'System_IEquatable_1___System_String' )
      & ( elements != 'System_IComparable' )
      & ( 'System_Char' != 'System_IEquatable_1___System_String' )
      & ( exposeVersion != 'ArrayCategoryInt' )
      & ( 'System_Byte' != 'Factorial' )
      & ( 'System_SByte' != 'System_UInt16' )
      & ( allocated != 'ArrayCategoryRef' )
      & ( 'System_Int32' != 'System_IEquatable_1___System_String' )
      & ( allocated != 'NonNullFieldsAreInitialized' )
      & ( 'FirstConsistentOwner' != stringLiteral0 )
      & ( true_1 != 'IsStaticField'(inv) )
      & ( exposeVersion != 'ArrayCategoryValue' )
      & ( exposeVersion != 'System_Object' )
      & ( 'System_Int32' != stringLiteral0 )
      & ( 'ArrayCategoryValue' != 'System_IConvertible' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Boolean' )
      & ( ownerFrame != 'System_IEquatable_1___System_String' )
      & ( 'ArrayCategoryRef' != 'System_IntPtr' )
      & ( allocated != 'System_Collections_IEnumerable' )
      & ( 'System_SByte' != 'System_IConvertible' )
      & ( 'System_SByte' != 'System_IComparable' )
      & ( sharingMode != 'System_Int64' )
      & ( 'System_SByte' != 'System_Collections_IEnumerable' )
      & ( 'ArrayCategoryValue' != 'System_IComparable' )
      & ( 'System_Object' = X0 )
      & ( true_1 = x('System_String','System_IComparable_1___System_String') )
      & ! [X38: $int,X37: $int] :
        ? [X39: $int,X40: $int,X41: $int] :
          ( ( typeof(X38) = X41 )
          & ( select2(X37,X38,ownerRef) = X40 )
          & ( select2(X37,X38,ownerFrame) = X39 )
          & ( ( true_1 != 'IsHeap'(X37) )
            | ( ( select2(X37,X38,localinv) = X41 )
              & ( select2(X37,X38,inv) = X41 ) )
            | ( true_1 != x(select2(X37,X40,inv),X39) )
            | ( 'PeerGroupPlaceholder' = X39 )
            | ( select2(X37,X40,localinv) = 'BaseClass'(X39) ) ) )
      & ( elements != 'System_UInt64' )
      & ! [X350: $int,X351: $int,X352: $int] : ( 'ValueArrayGet'('ValueArraySet'(X352,X350,X351),X350) = X351 )
      & ( 'System_UInt64' != 'Factorial' )
      & ( 'System_Boolean' != 'FirstConsistentOwner' )
      & ( sharingMode != 'System_Char' )
      & ( 'PeerGroupPlaceholder' != 'System_Int32' )
      & ( 'SharingMode_Unshared' != 'System_Int16' )
      & ( 'System_IComparable_1___System_String' != stringLiteral0 )
      & ( sharingMode != 'SharingMode_Unshared' )
      & ( inv != 'SharingMode_LockProtected' )
      & ( 'FirstConsistentOwner' != 'System_Collections_IEnumerable' )
      & ( 'System_Int32' != 'System_IConvertible' )
      & ! [X165: $int,X164: $int,X166: $int] :
          ( ( 'ArrayCategoryValue' = 'ArrayCategory'(X166) )
          | ( true_1 != x(X166,'ValueArray'(X164,X165)) ) )
      & ( 'PeerGroupPlaceholder' != 'System_IComparable' )
      & ( 'System_UInt16' != 'System_UInt32' )
      & ( 'System_Type' != 'System_Byte' )
      & ( 'System_Boolean' != 'NonNullFieldsAreInitialized' )
      & ( ownerFrame != 'PeerGroupPlaceholder' )
      & ( 'System_Boolean' != 'System_UInt64' )
      & ( 'System_UInt16' != 'System_ICloneable' )
      & ! [X53: $int,X54: $int] :
          ( ( ( true_1 = x(typeof(X54),X53) )
            | ( nullObject = X54 )
            | ( true_1 != 'Is'(X54,X53) ) )
          & ( ( true_1 = 'Is'(X54,X53) )
            | ( ( true_1 != x(typeof(X54),X53) )
              & ( nullObject != X54 ) ) ) )
      & ( 'System_SByte' != 'Factorial' )
      & ( 'System_Object' = 'DeclType'(elements) )
      & ( ownerRef != 'System_IEquatable_1___System_String' )
      & ( 'Factorial' != stringLiteral0 )
      & ! [X47: $int,X50: $int,X48: $int,X49: $int] : ( 'ArrayIndexInvY'('ArrayIndex'(X50,X49,X47,X48)) = X48 )
      & ( 'System_IConvertible' != 'Factorial' )
      & ! [X276: $int,X277: $int,X275: $int] : ( 'StructGet'('StructSet'(X276,X275,X277),X275) = X277 )
      & ( 'System_Boolean' != 'System_Int64' )
      & ( 'FirstConsistentOwner' != 'System_Byte' )
      & ( allocated != 'System_UInt64' )
      & ( 'FirstConsistentOwner' != 'System_IntPtr' )
      & ( elements != 'System_Object' )
      & ( 'System_UInt16' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_ICloneable' != 'System_IComparable' )
      & ( 'NonNullFieldsAreInitialized' != 'System_IEquatable_1___System_String' )
      & ( 'System_Char' != 'System_Collections_IEnumerable' )
      & ( localinv != 'SharingMode_Unshared' )
      & ( 'PeerGroupPlaceholder' != 'System_UIntPtr' )
      & ! [X139: $int,X138: $int,X137: $int] :
          ( ( true_1 = x('RefArray'(X137,X139),'RefArray'(X138,X139)) )
          | ( true_1 != x(X137,X138) ) )
      & ! [X194: $int,X195: $int] :
        ? [X196: $int] :
          ( ( true_1 = x(X196,X196) )
          & ( true_1 = x(X196,'System_Array') )
          & ( 'ValueArray'(X195,X194) = X196 ) )
      & ( elements != 'System_Collections_IEnumerable' )
      & ( 'System_SByte' != 'System_UInt32' )
      & ( sharingMode != 'PeerGroupPlaceholder' )
      & ! [X192: $int] :
        ? [X193: $int] :
          ( ~ $less(int_2147483647,X193)
          & ( 'Length'(X192) = X193 )
          & ~ $less(X193,0) )
      & ( 'System_ICloneable' != stringLiteral0 )
      & ( true_1 = x('System_String','System_Collections_Generic_IEnumerable_1___System_Char') )
      & ( 'System_String' != 'System_ICloneable' )
      & ( 'NonNullFieldsAreInitialized' != 'System_IConvertible' )
      & ( exposeVersion != 'System_Int64' )
      & ( ownerFrame != 'System_UInt64' )
      & ( exposeVersion != 'System_Boolean' )
      & ( sharingMode != 'System_Int32' )
      & ! [X43: $int,X44: $int] :
        ? [X45: $int] :
          ( ( typeof(X43) = X45 )
          & ( ( nullObject = X43 )
            | ( ( select2(X44,X43,localinv) = X45 )
              & ( select2(X44,X43,inv) = X45 ) )
            | ( true_1 != 'IsHeap'(X44) )
            | ( true_1 != x(X45,'System_Array') ) ) )
      & ( 'System_String' != 'System_IComparable_1___System_String' )
      & ( 'System_Object' != 'System_String' )
      & ! [X341: $int,X339: $int,X338: $int,X340: $int] :
          ( ( X338 = X339 )
          | ( 'ValueArrayGet'(X341,X338) = 'ValueArrayGet'('ValueArraySet'(X341,X339,X340),X338) ) )
      & ! [X204: $int,X205: $int] :
          ( ( x_2(X204,X205) = x_2($sum(X204,X205),X205) )
          | $less(X205,0)
          | $less(X204,0) )
      & ( 'ArrayCategoryValue' != 'System_Byte' )
      & ( 'System_Byte' != 'System_UInt32' )
      & ( 'System_Type' != 'System_IComparable_1___System_String' )
      & ( 'System_Object' != 'System_IComparable_1___System_String' )
      & ( 'ArrayCategoryInt' != 'System_UInt32' )
      & ( true_1 = x('System_String','System_Collections_IEnumerable') )
      & ( 'SharingMode_Unshared' != 'ArrayCategoryValue' )
      & ( elements != 'System_Char' )
      & ( inv != 'System_UIntPtr' )
      & ( 'System_Int16' != 'System_Int32' )
      & ( 'System_Boolean' != 'System_Char' )
      & ! [X116: $int,X117: $int,X115: $int] :
          ( ( 'ArrayCategoryInt' = 'ArrayCategory'(X116) )
          | ( true_1 != x(X116,'IntArray'(X115,X117)) ) )
      & ( 'ArrayCategoryNonNullRef' != 'System_SByte' )
      & ! [X267: $int] : ( 'ClassReprInv'('ClassRepr'(X267)) = X267 )
      & ( 'ArrayCategoryInt' != 'System_Array' )
      & ! [X6: $int,X5: $int,X7: $int] :
          ( ( nullObject = X5 )
          | ( 'Rank'(X5) = X6 )
          | ( true_1 != x(typeof(X5),'IntArray'(X7,X6)) ) )
      & ( elements != 'System_Int16' )
      & ! [X112: $int,X113: $int] :
        ? [X114: $int] :
          ( ( ~ $less(X113,0)
            | $less(0,X112)
            | ( ~ $less(0,X114)
              & $less(X113,X114) ) )
          & ( x_2(X112,X113) = X114 ) )
      & ( 'System_Object' != 'System_Collections_IEnumerable' )
      & ( ownerFrame != 'System_Object' )
      & ( 'ArrayCategoryInt' != stringLiteral0 )
      & ( inv != 'System_ICloneable' )
      & ( 'FirstConsistentOwner' != 'System_UInt32' )
      & ! [X188: $int,X189: $int] : ( 'ElementType'('RefArray'(X188,X189)) = X188 )
      & ( 'System_Collections_IEnumerable' != stringLiteral0 )
      & ( allocated != 'System_IComparable_1___System_String' )
      & ( ownerRef != 'System_Byte' )
      & ( 'System_Object' != 'System_UInt16' )
      & ( 'ArrayCategoryRef' != 'System_IComparable' )
      & ( true_1 = 'IsMemberlessType'('System_IComparable_1___System_String') )
      & ( allocated != 'System_Char' )
      & ( localinv != 'System_UInt16' )
      & ( 'System_Int16' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( allocated != 'System_Boolean' )
      & ( 'System_Array' != 'System_Byte' )
      & ! [X362: $int,X363: $int,X364: $int,X361: $int] :
          ( ( X362 = X364 )
          | ( 'RefArrayGet'('RefArraySet'(X363,X362,X361),X364) = 'RefArrayGet'(X363,X364) ) )
      & ( elements != 'System_ICloneable' )
      & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != stringLiteral0 )
      & ( exposeVersion != 'ArrayCategoryNonNullRef' )
      & ( true_1 = x('System_ICloneable','System_ICloneable') )
      & ! [X326: $int] :
          ( ( ( ~ $less(X326,0)
              & ~ $less(int_4294967295,X326) )
            | ( true_1 != 'InRange'(X326,'System_UInt32') ) )
          & ( ( true_1 = 'InRange'(X326,'System_UInt32') )
            | $less(X326,0)
            | $less(int_4294967295,X326) ) )
      & ( exposeVersion != 'System_Type' )
      & ( 'System_UInt16' != 'System_IComparable_1___System_String' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Int32' )
      & ( sharingMode != 'Factorial' )
      & ( 'System_Type' != 'System_IConvertible' )
      & ( 'Factorial' = 'AsDirectSubClass'('Factorial',X0) )
      & $less(int_4294967295,int_9223372036854775807)
      & ( allocated != inv )
      & ( true_1 = x('System_IConvertible','System_IConvertible') )
      & ( 'System_UInt32' != 'System_Int64' )
      & ( 'ArrayCategoryInt' != 'ArrayCategoryNonNullRef' )
      & ! [X67: $int,X68: $int] :
          ( ( nullObject = 'As'(X68,X67) )
          | ( true_1 = 'Is'(X68,X67) ) )
      & ( 'System_Int64' != 'System_Collections_IEnumerable' )
      & ! [X122: $int,X125: $int,X124: $int,X123: $int] :
        ? [X126: $int] :
          ( ( 'Box'(X124,X126) = X126 )
          & ( 'UnboxedType'(X126) = X122 )
          & ( 'BoxFunc'(X124,X122,X125,X123) = X126 ) )
      & ( 'System_Char' != 'System_ICloneable' )
      & ( 'System_UInt32' != 'System_Collections_IEnumerable' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Byte' )
      & ( allocated != 'SharingMode_LockProtected' )
      & ( 'System_SByte' != 'System_UInt64' )
      & ( 'SharingMode_LockProtected' != 'System_UIntPtr' )
      & ( exposeVersion != 'System_IComparable_1___System_String' )
      & ( 'System_UIntPtr' != 'System_IntPtr' )
      & ! [X92: $int,X94: $int,X93: $int] :
          ( $less(X93,2)
          | ~ $less(X92,X94)
          | ( x_2(X94,X93) != x_2(X92,X93) )
          | ~ $less(X94,$sum(X92,X93)) )
      & ( 'System_Byte' != 'System_UInt64' )
      & ( 'System_Array' != 'System_IComparable_1___System_String' )
      & ( 'System_Boolean' != 'System_Int32' )
      & ( 'System_UInt32' != 'System_IEquatable_1___System_String' )
      & ( allocated != 'System_UIntPtr' )
      & ( allocated != 'System_Int64' )
      & ( exposeVersion != 'System_IConvertible' )
      & ( exposeVersion != 'Factorial' )
      & ( true_1 = x('System_Collections_IEnumerable','System_Collections_IEnumerable') )
      & ( 'System_UInt64' != 'System_Char' )
      & ! [X58: $int,X56: $int,X60: $int,X57: $int,X59: $int] :
          ( ( true_1 != 'IsHeap'(X59) )
          | ( nullObject != 'RefArrayGet'(select2(X59,X60,elements),X58) )
          | ( true_1 != x(typeof(X60),'NonNullRefArray'(X56,X57)) ) )
      & ( 'System_String' != 'System_UIntPtr' )
      & ( 'System_UInt32' != 'Factorial' )
      & ( sharingMode != 'System_String' )
      & ! [X136: $int,X135: $int,X134: $int] :
          ( ( true_1 != x(X135,'AsDirectSubClass'(X136,X134)) )
          | ( 'OneClassDown'(X135,X134) = X136 ) )
      & ( exposeVersion != 'System_Collections_IEnumerable' )
      & ( 'SharingMode_LockProtected' != 'System_Int16' )
      & ( 'System_Int32' != 'System_Int64' )
      & ( 'System_Array' != 'System_IComparable' )
      & ( exposeVersion != 'System_IEquatable_1___System_String' )
      & ( 'System_IntPtr' != 'System_IComparable_1___System_String' )
      & ( 'ArrayCategoryRef' != 'System_Array' )
      & ( true_1 = 'IncludeInMainFrameCondition'(allocated) )
      & ( 'PeerGroupPlaceholder' != 'System_UInt32' )
      & ( 'System_Char' != 'System_IComparable_1___System_String' )
      & ( 'System_Object' = 'DeclType'(exposeVersion) )
      & ( inv != 'System_String' )
      & ( inv != 'System_IEquatable_1___System_String' )
      & ( true_1 != 'IncludeInMainFrameCondition'(inv) )
      & ( 'System_IComparable_1___System_String' != 'System_Collections_IEnumerable' )
      & ( 'FirstConsistentOwner' != 'System_UIntPtr' )
      & ( 'SharingMode_LockProtected' != 'System_String' )
      & ( 'SharingMode_LockProtected' != ownerFrame )
      & ( 'System_ICloneable' != 'System_Collections_IEnumerable' )
      & ( exposeVersion != 'System_ICloneable' )
      & ( inv != localinv )
      & ( true_1 = x('System_IEquatable_1___System_String','System_Object') )
      & ( 'ArrayCategoryNonNullRef' != 'System_Int64' )
      & ( localinv != 'System_UIntPtr' )
      & ( localinv != 'System_Int32' )
      & ! [X222: $int,X223: $int,X224: $int] :
        ? [X225: $int] :
          ( ( ( true_1 != x(X224,X225) )
            | ( X224 = X225 ) )
          & ( 'IntArray'(X223,X222) = X225 ) )
      & ( 'System_UInt16' != 'System_Int64' )
      & ( 'System_SByte' != 'System_Char' )
      & $less(100000,int_2147483647)
      & ( ownerRef != 'System_UIntPtr' )
      & ( true_1 != 'IncludeInMainFrameCondition'(localinv) )
      & ( 'System_Array' != 'NonNullFieldsAreInitialized' )
      & ( 'PeerGroupPlaceholder' != 'ArrayCategoryValue' )
      & ( 'System_Array' != 'System_UInt16' )
      & ( 'PeerGroupPlaceholder' != 'Factorial' )
      & ( 'ArrayCategoryValue' != 'System_UIntPtr' )
      & ( localinv != 'ArrayCategoryRef' )
      & ! [X336: $int,X337: $int] :
          ( ( $less(X336,0)
            & $less(X337,0) )
          | ~ $less(and_1(X337,X336),0) )
      & ( 'System_String' != 'System_UInt64' )
      & ( true_1 = 'IsMemberlessType'('System_IEquatable_1___System_String') )
      & ! [X215: $int,X214: $int] : ( 0 = 'LBound'(X214,X215) )
      & ( ownerFrame != 'System_UIntPtr' )
      & ( elements != 'System_UInt32' )
      & ( 'System_Boolean' != 'System_IEquatable_1___System_String' )
      & ! [X190: $int,X191: $int] : ( 'System_Object' = typeof('ElementProxyStruct'(X191,X190)) )
      & ( ownerRef != 'System_Collections_IEnumerable' )
      & ( 'PeerGroupPlaceholder' != 'System_ICloneable' )
      & ( ownerRef != 'System_SByte' )
      & ( true_1 = 'IsValueType'('System_Boolean') )
      & ! [X315: $int,X316: $int] :
          ( $less(X316,1)
          | ( shr(X315,X316) = x_1(shr(X315,$sum(X316,$uminus(1))),2) ) )
      & ( ownerFrame != 'Factorial' )
      & ( elements != 'System_UIntPtr' )
      & ( exposeVersion != 'System_IntPtr' )
      & ( allocated != ownerRef )
      & ( 'System_Char' != 'System_IComparable' )
      & ! [X280: $int,X281: $int,X278: $int,X279: $int] :
          ( ( 'BoxFunc'(X281,X280,X278,X279) = X281 )
          | ( true_1 = 'IsValueType'('UnboxedType'(X281)) ) )
      & ( true_1 != 'IsStaticField'(allocated) )
      & ( 'System_IntPtr' != 'System_IComparable' )
      & ( 'FirstConsistentOwner' != 'System_IComparable_1___System_String' )
      & ( sharingMode != 'System_Object' )
      & ( true_1 = x('System_String','System_String') )
      & ( sharingMode != 'System_SByte' )
      & ( 'System_Byte' != 'System_Int32' )
      & ( 'SharingMode_Unshared' != 'System_Int64' )
      & ( true_1 != 'IsStaticField'(elements) )
      & ( true_1 = 'IsValueType'('System_Byte') )
      & ( allocated != 'PeerGroupPlaceholder' )
      & ( 'ArrayCategoryInt' != 'System_UInt16' )
      & ( 'System_Object' != 'System_IComparable' )
      & ( 'NonNullFieldsAreInitialized' != 'System_UInt32' )
      & ( 'System_Int64' != 'System_IComparable_1___System_String' )
      & ( 'SharingMode_Unshared' != 'Factorial' )
      & ( ownerFrame != 'System_UInt16' )
      & ! [X203: $int] : ( shl(X203,0) = X203 )
      & ! [X372: $int,X371: $int] : ( 'ElementType'('NonNullRefArray'(X372,X371)) = X372 )
      & ( 'ArrayCategoryInt' != 'Factorial' )
      & ( 'System_Boolean' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_String' != 'System_Collections_IEnumerable' )
      & ! [X158: $int,X159: $int] :
          ( ( shl(X159,X158) = $product(shl(X159,$sum(X158,$uminus(1))),2) )
          | $less(X158,1) )
      & ( 'ArrayCategoryNonNullRef' != 'System_Type' )
      & ( 'System_UInt32' != 'System_IConvertible' )
      & ( 'System_Array' != 'System_UInt32' )
      & ( allocated != 'System_UInt32' )
      & ( elements != 'System_Byte' )
      & ( localinv != 'System_Char' )
      & ( 'SharingMode_Unshared' != 'System_Type' )
      & ( 'System_SByte' != 'System_UIntPtr' )
      & ( exposeVersion != ownerFrame )
      & ( sharingMode != 'System_Array' )
      & ! [X23: $int] : ( nullObject != 'ClassRepr'(X23) )
      & ( 'ArrayCategoryInt' != 'System_IConvertible' )
      & ( 'System_Type' != 'System_Int32' )
      & ( 'ArrayCategoryNonNullRef' != 'System_IComparable' )
      & ( elements != ownerFrame )
      & ( 'System_IConvertible' != 'System_IEquatable_1___System_String' )
      & ( 'System_Array' != 'System_Char' )
      & ( allocated != 'ArrayCategoryValue' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Char' )
      & ( 'ArrayCategoryInt' != 'System_Object' )
      & ( exposeVersion != 'System_Char' )
      & ( 'SharingMode_Unshared' != 'FirstConsistentOwner' )
      & ( sharingMode != 'System_UInt16' )
      & ( 'System_SByte' != 'System_IEquatable_1___System_String' )
      & ( ownerRef != 'FirstConsistentOwner' )
      & ( 'System_String' = 'AsImmutable'('System_String') )
      & ( 'ArrayCategoryInt' != 'System_SByte' )
      & ( 'System_Object' != 'System_Int64' )
      & ( 'System_Object' != 'System_IntPtr' )
      & ( ownerFrame != 'System_SByte' )
      & ( 'System_Object' = X1 )
      & ( allocated != elements )
      & ( 'SharingMode_LockProtected' != 'System_Type' )
      & ( 'System_Int16' != 'System_IEquatable_1___System_String' )
      & ( 'System_SByte' != 'System_Byte' )
      & ! [X321: $int,X322: $int] :
          ( ( 'Box'('Unbox'(X322),X322) = X322 )
          | ( nullObject = 'BoxTester'(X322,X321) ) )
      & ( true_1 = x('System_String','System_IComparable') )
      & ( 'SharingMode_Unshared' != 'SharingMode_LockProtected' )
      & ( localinv != sharingMode )
      & ( 'SharingMode_LockProtected' != 'System_Collections_IEnumerable' )
      & ( 'ArrayCategoryRef' != 'System_Int32' )
      & ( 'ArrayCategoryInt' != 'System_Int64' )
      & ( 'System_Int64' != 'System_Char' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Char' )
      & ( 'SharingMode_LockProtected' != stringLiteral0 )
      & ( 'System_Char' != 'System_IConvertible' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'ArrayCategoryRef' != 'System_IComparable_1___System_String' )
      & ( 'SharingMode_Unshared' != 'ArrayCategoryNonNullRef' )
      & ( 'NonNullFieldsAreInitialized' != 'System_IComparable' )
      & ! [X266: $int] :
          ( ( ( ~ $less(X266,0)
              & $less(X266,65536) )
            | ( true_1 != 'InRange'(X266,'System_UInt16') ) )
          & ( ( true_1 = 'InRange'(X266,'System_UInt16') )
            | $less(X266,0)
            | ~ $less(X266,65536) ) )
      & ( elements != 'ArrayCategoryInt' )
      & ( 'Factorial' = 'AsMutable'('Factorial') )
      & ( 'SharingMode_LockProtected' != 'ArrayCategoryValue' )
      & ( inv != ownerRef )
      & ( 'System_Int64' != 'System_IComparable' )
      & ( 'SharingMode_Unshared' != 'ArrayCategoryInt' )
      & ( exposeVersion != ownerRef )
      & ( 'System_String' != 'System_Int16' )
      & ( elements != 'System_Int32' )
      & ( sharingMode != 'System_UInt32' )
      & ( 'ArrayCategoryRef' != 'System_UIntPtr' )
      & ! [X163: $int] : ( true_1 != x(typeof('ClassRepr'(X163)),'System_Object') )
      & ! [X236: $int,X233: $int,X235: $int,X234: $int] :
        ? [X237: $int] :
          ( ( ( nullObject = X237 )
            | ( true_1 != 'IsHeap'(X236) )
            | ( ( select2(X236,X237,ownerRef) = X233 )
              & ( select2(X236,X237,ownerFrame) = X235 ) ) )
          & ( select2(X236,X233,'AsRepField'(X234,X235)) = X237 ) )
      & ( 'ArrayCategoryNonNullRef' != 'System_UInt64' )
      & ( 'FirstConsistentOwner' != 'System_SByte' )
      & ( 'SharingMode_LockProtected' != 'System_IConvertible' )
      & ( 'System_String' != 'System_IConvertible' )
      & ( 'System_Int64' != 'System_IEquatable_1___System_String' )
      & ( 'ArrayCategoryRef' != 'System_String' )
      & ( 'SharingMode_LockProtected' != 'System_UInt64' )
      & ( 'SharingMode_LockProtected' != 'Factorial' )
      & ( 'PeerGroupPlaceholder' != 'System_String' )
      & ( inv != 'ArrayCategoryRef' )
      & ( 'PeerGroupPlaceholder' != 'System_Int16' )
      & ( 'System_IConvertible' != 'System_IComparable_1___System_String' )
      & ( 'System_IConvertible' != 'System_IComparable' )
      & ( $sum(int_m2147483648,1) = $sum(0,$uminus(int_2147483647)) )
      & ( inv != 'Factorial' )
      & ( 'System_IntPtr' != 'System_Collections_IEnumerable' )
      & ( 'ArrayCategoryValue' != stringLiteral0 )
      & ( elements != 'ArrayCategoryValue' )
      & ( 'NonNullFieldsAreInitialized' != 'System_IComparable_1___System_String' )
      & ( 'System_UInt32' != 'System_UIntPtr' )
      & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'Factorial' )
      & ( 'ArrayCategoryInt' != 'FirstConsistentOwner' )
      & ( 'System_IComparable_1___System_String' != 'Factorial' )
      & ( 'System_Array' != 'System_UIntPtr' )
      & ( true_1 = 'IncludeInMainFrameCondition'(exposeVersion) )
      & ( 'PeerGroupPlaceholder' != 'System_Byte' )
      & ( 'System_String' != 'System_Char' )
      & ( 'System_UIntPtr' != 'System_ICloneable' )
      & ( 'System_Object' != 'System_UIntPtr' )
      & ! [X73: $int,X74: $int,X75: $int] :
        ? [X76: $int] :
          ( ( ( ( true_1 = x(X76,X74) )
              & ( 'RefArray'(X76,X75) = X73 )
              & ( X73 != X74 ) )
            | ( true_1 != x(X73,'RefArray'(X74,X75)) ) )
          & ( 'ElementType'(X73) = X76 ) )
      & ( 'FirstConsistentOwner' != 'Factorial' )
      & ( 'FirstConsistentOwner' != 'System_ICloneable' )
      & ! [X344: $int,X343: $int] :
        ? [X345: $int] :
          ( ( true_1 = x(X345,X345) )
          & ( true_1 = x(X345,'System_Array') )
          & ( 'NonNullRefArray'(X343,X344) = X345 ) )
      & ( 'SharingMode_LockProtected' != 'FirstConsistentOwner' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Int16' )
      & ( sharingMode != 'ArrayCategoryRef' )
      & ( ownerFrame != 'System_Collections_IEnumerable' )
      & ! [X15: $int,X14: $int,X13: $int] :
          ( ( true_1 != 'InRange'(X14,X15) )
          | ( 'IntToInt'(X14,X13,X15) = X14 ) )
      & ( true_1 != 'IsImmutable'('Factorial') )
      & ! [X101: $int,X103: $int,X102: $int] :
          ( ( true_1 = 'StringEquals'(X101,X102) )
          | ( true_1 != 'StringEquals'(X103,X102) )
          | ( true_1 != 'StringEquals'(X101,X103) ) )
      & ! [X282: $int] : ( true_1 != 'IsMemberlessType'(typeof(X282)) )
      & ( 'System_Int16' != 'System_UInt64' )
      & ( 'System_UInt32' != 'System_IntPtr' )
      & ( sharingMode != 'ArrayCategoryValue' )
      & ( 'SharingMode_LockProtected' != 'System_SByte' )
      & ( 'SharingMode_Unshared' != 'PeerGroupPlaceholder' )
      & ( 'System_Type' != 'System_Int16' )
      & ( localinv != 'System_Object' )
      & ! [X349: $int,X348: $int] : ( 'ElementType'('ValueArray'(X348,X349)) = X348 )
      & ( ownerRef != 'System_Int32' )
      & ! [X105: $int,X104: $int,X106: $int] :
        ? [X107: $int] :
          ( ( 'ValueArray'(X104,X105) = X107 )
          & ( ( X106 = X107 )
            | ( true_1 != x(X106,X107) ) ) )
      & ( 'System_String' != 'System_IntPtr' )
      & ( 'ArrayCategoryRef' != stringLiteral0 )
      & ( 'ArrayCategoryRef' != 'Factorial' )
      & ( localinv != 'NonNullFieldsAreInitialized' )
      & ( allocated != 'System_String' )
      & ( 'System_Type' != 'System_SByte' )
      & ( 'System_UInt16' != 'System_Char' )
      & ( allocated != 'System_SByte' )
      & ! [X209: $int,X211: $int,X207: $int,X208: $int,X210: $int] :
        ? [X212: $int] :
          ( ( select2(X208,X211,'AsElementsRepField'(X210,X209,X207)) = X212 )
          & ? [X213: $int] :
              ( ( ( true_1 != 'IsHeap'(X208) )
                | ( nullObject = X212 )
                | ( ( select2(X208,X213,ownerRef) = X211 )
                  & ( select2(X208,X213,ownerFrame) = X209 ) ) )
              & ( 'ElementProxy'(X212,X207) = X213 ) ) )
      & ( 'SharingMode_LockProtected' != 'NonNullFieldsAreInitialized' )
      & ( allocated != 'System_IConvertible' )
      & ( ownerRef != 'System_IConvertible' )
      & ( 'ArrayCategoryValue' != 'System_Collections_IEnumerable' )
      & ( ownerFrame != 'System_UInt32' )
      & ( allocated != 'ArrayCategoryInt' )
      & ( 'System_Object' != 'System_UInt32' )
      & ( 'System_Char' != 'Factorial' )
      & ( 'System_Type' != 'System_IntPtr' )
      & ( elements != 'System_String' )
      & ( localinv != ownerFrame )
      & ( 'System_Int16' != 'System_UInt32' )
      & ( 'SharingMode_Unshared' != 'System_UInt64' )
      & ( localinv != stringLiteral0 )
      & ( 'ArrayCategoryValue' != 'FirstConsistentOwner' )
      & ( exposeVersion != sharingMode )
      & ( 'System_Boolean' != 'System_IConvertible' )
      & ( localinv != 'System_IntPtr' )
      & ! [X327: $int,X329: $int,X328: $int] :
          ( ( 'IfThenElse'(X329,X327,X328) = X328 )
          | ( true_1 = X329 ) )
      & ( ownerFrame != 'System_ICloneable' )
      & ( 'NonNullFieldsAreInitialized' != 'System_UIntPtr' )
      & ! [X28: $int,X30: $int,X29: $int] :
        ? [X31: $int] :
          ( ( ( true_1 != x(X31,X28) )
            | ( X28 = X31 )
            | ( true_1 = x('System_Array',X28) ) )
          & ( 'ValueArray'(X29,X30) = X31 ) )
      & ( sharingMode != 'NonNullFieldsAreInitialized' )
      & ( inv != 'NonNullFieldsAreInitialized' )
      & ( 'System_Object' != 'System_SByte' )
      & ( 'ArrayCategoryInt' != 'System_Int16' )
      & ! [X157: $int,X155: $int,X156: $int] :
          ( ( nullObject = X155 )
          | ( true_1 != x(typeof(X155),'ValueArray'(X156,X157)) )
          | ( 'Rank'(X155) = X157 ) )
      & ! [X36: $int,X34: $int,X35: $int] :
          ( ( 'Rank'(X35) = X34 )
          | ( nullObject = X35 )
          | ( true_1 != x(typeof(X35),'NonNullRefArray'(X36,X34)) ) )
      & ( 'PeerGroupPlaceholder' != stringLiteral0 )
      & ! [X239: $int,X238: $int] :
          ( ( ( 'AsImmutable'(X238) = X238 )
            & ( true_1 = 'IsImmutable'(X238) ) )
          | ( true_1 != x(X238,'AsImmutable'(X239)) ) )
      & ( 'System_Object' = 'DeclType'('NonNullFieldsAreInitialized') )
      & ( 'System_SByte' != 'System_IntPtr' )
      & ( 'System_SByte' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_UInt32' != 'System_Char' )
      & ( ownerRef != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( ownerFrame != 'ArrayCategoryValue' )
      & ( inv != 'System_Byte' )
      & ( inv != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ! [X248: $int,X247: $int] :
          ( ( 'AsRefField'(X248,X247) = X248 )
          | ( 'AsNonNullRefField'(X248,X247) != X248 ) )
      & ! [X299: $int,X298: $int,X300: $int] :
          ( ( true_1 = 'IsAllocated'(X300,'ValueArrayGet'(X299,X298)) )
          | ( true_1 != 'IsAllocated'(X300,X299) ) )
      & ( 'System_Byte' != 'System_Int64' )
      & ! [X143: $int,X144: $int] : ( 'System_Object' = typeof('ElementProxy'(X144,X143)) )
      & ( 'SharingMode_Unshared' != 'System_IEquatable_1___System_String' )
      & ( 'System_Array' != 'System_IEquatable_1___System_String' )
      & ( exposeVersion != 'NonNullFieldsAreInitialized' )
      & ( allocated != 'System_Int16' )
      & ( 'System_Array' != 'System_Int16' )
      & ( localinv != 'System_Boolean' )
      & ( sharingMode != 'ArrayCategoryInt' )
      & ( sharingMode != 'SharingMode_LockProtected' )
      & ( localinv != 'System_IComparable_1___System_String' )
      & ! [X85: $int] :
          ( ! [X87: $int,X86: $int] :
            ? [X88: $int] :
              ( ? [X89: $int] :
                  ( ( ( ( select2(X87,X88,localinv) = X89 )
                      & ( select2(X87,X88,inv) = X89 ) )
                    | ( true_1 != 'IsHeap'(X87) ) )
                  & ( typeof(X88) = X89 ) )
              & ( 'Box'(X86,X85) = X88 ) )
          | ( true_1 != 'IsValueType'('UnboxedType'(X85)) ) )
      & ( 'System_Int32' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_Array' != 'Factorial' )
      & ( ownerRef != 'System_UInt16' )
      & ( 'System_UInt16' != 'System_IEquatable_1___System_String' )
      & ( exposeVersion != 'System_Byte' )
      & ( 'System_SByte' != 'System_Int64' )
      & ( 'ArrayCategoryNonNullRef' != 'System_IComparable_1___System_String' )
      & ( inv != 'System_IntPtr' )
      & ( true_1 != 'IncludedInModifiesStar'(ownerFrame) )
      & ( 'System_UInt64' != 'System_IEquatable_1___System_String' )
      & ( 'SharingMode_Unshared' != 'System_UIntPtr' )
      & ( 'SharingMode_LockProtected' != ownerRef )
      & ( exposeVersion != 'PeerGroupPlaceholder' )
      & ( sharingMode != 'System_IEquatable_1___System_String' )
      & ( 'System_IComparable_1___System_String' = 'AsInterface'('System_IComparable_1___System_String') )
      & ( 'System_Boolean' != 'System_IComparable' )
      & ! [X98: $int,X99: $int] :
        ? [X100: $int] :
          ( ( 'Box'(X98,X99) = X100 )
          & ( ( X98 = X99 )
            | ( X99 != X100 )
            | ( true_1 != x('UnboxedType'(X100),'System_Object') ) ) )
      & ( elements != inv )
      & ( elements != 'System_IntPtr' )
      & ( 'System_UInt64' != 'System_UIntPtr' )
      & ( exposeVersion != 'System_UInt32' )
      & ! [X52: $int,X51: $int] : ( 'Unbox'('Box'(X52,X51)) = X52 )
      & ( 'ArrayCategoryInt' != 'System_IComparable_1___System_String' )
      & ( 'System_Int16' != 'System_UIntPtr' )
      & ( 'ArrayCategoryInt' != 'System_String' )
      & ( 'SharingMode_LockProtected' != 'System_Object' )
      & ( true_1 = 'IsMemberlessType'('System_ICloneable') )
      & ( 'System_Byte' != 'System_IComparable_1___System_String' )
      & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_IComparable' )
      & ( 'SharingMode_LockProtected' != 'ArrayCategoryNonNullRef' )
      & ( true_1 = x('System_IComparable','System_Object') )
      & ( ownerFrame != 'System_Int16' )
      & ! [X118: $int] :
          ( ( ( $less(X118,32768)
              & ~ $less(X118,$sum(0,$uminus(32768))) )
            | ( true_1 != 'InRange'(X118,'System_Int16') ) )
          & ( ( true_1 = 'InRange'(X118,'System_Int16') )
            | ~ $less(X118,32768)
            | $less(X118,$sum(0,$uminus(32768))) ) )
      & ! [X227: $int,X226: $int] :
        ? [X228: $int] :
          ( ( select2(X226,X227,'FirstConsistentOwner') = X228 )
          & ? [X229: $int,X230: $int,X231: $int,X232: $int] :
              ( ( select2(X226,X228,ownerFrame) = X229 )
              & ( select2(X226,X227,ownerFrame) = X232 )
              & ( select2(X226,X228,ownerRef) = X230 )
              & ( ( true_1 != select2(X226,X227,allocated) )
                | ( 'PeerGroupPlaceholder' = X232 )
                | ( select2(X226,X231,localinv) = 'BaseClass'(X232) )
                | ( nullObject = X227 )
                | ( true_1 != x(select2(X226,X231,inv),X232) )
                | ( ( true_1 = select2(X226,X228,allocated) )
                  & ( ( true_1 != x(select2(X226,X230,inv),X229) )
                    | ( 'PeerGroupPlaceholder' = X229 )
                    | ( 'BaseClass'(X229) = select2(X226,X230,localinv) ) )
                  & ( nullObject != X228 ) )
                | ( true_1 != 'IsHeap'(X226) ) )
              & ( select2(X226,X227,ownerRef) = X231 ) ) )
      & ( allocated != 'System_Byte' )
      & ( 'System_String' != 'Factorial' )
      & ( ownerFrame != 'System_Int32' )
      & ( sharingMode != 'System_IntPtr' )
      & ( 'System_Object' != 'System_IEquatable_1___System_String' )
      & ( localinv != 'System_IComparable' )
      & ( true_1 = 'IsValueType'('System_Int64') )
      & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_Collections_IEnumerable' )
      & ( true_1 = x('System_String','System_IEquatable_1___System_String') )
      & ( 'System_Int16' != 'System_IComparable' )
      & ( 'System_Type' != 'Factorial' )
      & ( 'ArrayCategoryRef' != 'FirstConsistentOwner' )
      & ( elements != exposeVersion )
      & ( 'ArrayCategoryInt' != 'System_UInt64' )
      & ( 'System_Byte' != 'System_IComparable' )
      & ( 'System_UInt64' != stringLiteral0 )
      & ! [X2: $int,X3: $int] :
        ? [X4: $int] :
          ( ( ~ $less(X2,32768)
            | $less(16,X3)
            | $less(X3,0)
            | $less(X2,0)
            | ( ~ $less(int_2147483647,X4)
              & ~ $less(X4,0) ) )
          & ( shl(X2,X3) = X4 ) )
      & ( sharingMode != 'System_Byte' )
      & ( 'ArrayCategoryValue' != 'System_IntPtr' )
      & ( 'ArrayCategoryNonNullRef' != 'FirstConsistentOwner' )
      & ( 'System_Int64' != 'Factorial' )
      & ( 'System_Int16' != 'System_IConvertible' )
      & ! [X346: $int] :
          ( ( ( $less(X346,128)
              & ~ $less(X346,$sum(0,$uminus(128))) )
            | ( true_1 != 'InRange'(X346,'System_SByte') ) )
          & ( ( true_1 = 'InRange'(X346,'System_SByte') )
            | ~ $less(X346,128)
            | $less(X346,$sum(0,$uminus(128))) ) )
      & ( localinv != 'System_String' )
      & ( inv != 'ArrayCategoryNonNullRef' )
      & ( 'SharingMode_Unshared' != 'System_IComparable_1___System_String' )
      & ( localinv != 'System_SByte' )
      & ! [X131: $int,X132: $int] :
        ? [X133: $int] :
          ( ( $sum(X132,$uminus(X131)) = X133 )
          & ( $less(X131,0)
            | $less(X133,0)
            | ( x_2(X133,X131) = x_2(X132,X131) ) ) )
      & ( 'ArrayCategoryRef' != 'System_Byte' )
      & ( 'System_IComparable' != stringLiteral0 )
      & ( 'System_IntPtr' != 'System_IEquatable_1___System_String' )
      & ( 'System_UInt32' != 'System_IComparable' )
      & ( 'System_String' != 'System_SByte' )
      & ( ownerFrame != 'System_String' )
      & ( 'SharingMode_LockProtected' != 'System_Int64' )
      & ( true_1 = 'IsMemberlessType'('System_Collections_Generic_IEnumerable_1___System_Char') )
      & ! [X245: $int,X246: $int,X244: $int] :
          ( ( true_1 != 'System_String_Equals_System_String_System_String'(X245,X246,X244) )
          | ( 'System_String_IsInterned_System_String_notnull'(X245,X244) = 'System_String_IsInterned_System_String_notnull'(X245,X246) )
          | ( nullObject = X246 )
          | ( nullObject = X244 ) )
      & ( 'System_Boolean' != stringLiteral0 )
      & ( 'ArrayCategoryNonNullRef' != 'System_Array' )
      & ( 'ArrayCategoryValue' != 'System_Char' )
      & ( 'FirstConsistentOwner' != 'System_UInt64' )
      & ( 'PeerGroupPlaceholder' != 'System_IntPtr' )
      & ( true_1 = 'IsValueType'('System_UInt64') )
      & ! [X180: $int,X179: $int,X181: $int,X182: $int] :
          ( ( 'IntArrayGet'('IntArraySet'(X182,X181,X179),X180) = 'IntArrayGet'(X182,X180) )
          | ( X180 = X181 ) )
      & ( 'ArrayCategoryValue' != 'System_IComparable_1___System_String' )
      & ( 'System_IConvertible' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( true_1 = x('System_ICloneable','System_Object') )
      & ( 'SharingMode_Unshared' != 'System_UInt16' )
      & ( ownerRef != 'System_Type' )
      & ( 'ArrayCategoryValue' != 'ArrayCategoryRef' )
      & ( 'System_Boolean' != 'System_Type' )
      & ( allocated != 'System_Type' )
      & ( 'System_Int32' != 'System_Collections_IEnumerable' )
      & ( 'System_Int64' != 'System_UInt64' )
      & ( localinv != 'ArrayCategoryInt' )
      & ( localinv != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( sharingMode != ownerRef )
      & ! [X324: $int,X323: $int] :
        ? [X325: $int] :
          ( ( min(X324,X323) = X325 )
          & ( ( X323 = X325 )
            | ( X324 = X325 ) )
          & ~ $less(X323,X325)
          & ~ $less(X324,X325) )
      & ! [X206: $int] : ( 'TypeName'('TypeObject'(X206)) = X206 )
      & ( true_1 = 'IsValueType'('System_Int32') )
      & ( 'ArrayCategoryNonNullRef' != 'System_Byte' )
      & ( allocated != 'System_ICloneable' )
      & ( elements != 'FirstConsistentOwner' )
      & ( 'ArrayCategoryInt' != 'System_UIntPtr' )
      & ( 'NonNullFieldsAreInitialized' != 'System_UInt64' )
      & ( allocated != 'System_IntPtr' )
      & ( 'System_Type' != 'System_Collections_IEnumerable' )
      & ! [X318: $int,X317: $int,X319: $int] :
        ? [X320: $int] :
          ( ( ( nullObject = X320 )
            | ( ( select2(X317,X320,ownerRef) = select2(X317,X319,ownerRef) )
              & ( select2(X317,X320,ownerFrame) = select2(X317,X319,ownerFrame) ) )
            | ( true_1 != 'IsHeap'(X317) ) )
          & ( select2(X317,X319,'AsPeerField'(X318)) = X320 ) )
      & ( 'System_Array' != 'System_Int64' )
      & ( localinv != 'System_Int64' )
      & ( 'SharingMode_Unshared' != 'System_String' )
      & ( true_1 = x('System_IConvertible','System_Object') )
      & ( 'System_SByte' != 'System_Int16' )
      & ( sharingMode != 'System_Boolean' )
      & ( 'SharingMode_Unshared' != 'NonNullFieldsAreInitialized' )
      & ( ownerRef != 'System_Boolean' )
      & ! [X55: $int] :
          ( ( true_1 != 'IsHeap'(X55) )
          | ( true_1 = select2(X55,stringLiteral0,allocated) ) )
      & ( 'System_IConvertible' != stringLiteral0 )
      & ( 'System_Int32' != 'System_UInt64' )
      & ( true_1 = 'IsValueType'('System_IntPtr') )
      & ( 'System_Object' != 'System_Int16' )
      & ( localinv != 'System_Int16' )
      & ( 'System_Byte' != 'System_UInt16' )
      & ( 'System_Int32' != 'System_IComparable' )
      & ( 'System_IConvertible' != 'System_Collections_IEnumerable' )
      & ( 'System_Array' != 'System_Type' )
      & ( 'System_Int32' != 'Factorial' )
      & ( 'System_Int16' != 'Factorial' )
      & ( 'SharingMode_Unshared' != 'System_IntPtr' )
      & ! [X306: $int,X305: $int] :
        ? [X307: $int] :
          ( ~ $less(X307,X305)
          & ( max(X306,X305) = X307 )
          & ~ $less(X307,X306)
          & ( ( X305 = X307 )
            | ( X306 = X307 ) ) )
      & ( 'System_Object' != stringLiteral0 )
      & ( 'FirstConsistentOwner' != 'System_IComparable' )
      & ( 'ArrayCategoryInt' != 'System_Int32' )
      & ( 'ArrayCategoryValue' != 'System_Boolean' )
      & ( elements != 'System_Int64' )
      & ( true_1 = 'IsValueType'('System_Int16') )
      & ( 'Factorial' != 'System_Collections_IEnumerable' )
      & ( true_1 != 'IncludeInMainFrameCondition'('FirstConsistentOwner') )
      & ( ownerRef != 'System_UInt32' )
      & ( 'FirstConsistentOwner' != 'System_IEquatable_1___System_String' )
      & ( 'SharingMode_Unshared' != 'ArrayCategoryRef' )
      & ( elements != 'System_IComparable_1___System_String' )
      & ( 'System_IEquatable_1___System_String' != 'System_IComparable' )
      & ( 'System_Type' != 'System_IComparable' )
      & ( true_1 = 'IncludeInMainFrameCondition'(elements) )
      & ( allocated != stringLiteral0 )
      & ( 'System_Int64' != 'System_IntPtr' )
      & ! [X342: $int] :
          ( ( stringLiteral0 = 'System_String_IsInterned_System_String_notnull'(X342,stringLiteral0) )
          | ( true_1 != 'IsHeap'(X342) ) )
      & ( 'System_UInt64' != 'System_IComparable' )
      & ! [X119: $int,X120: $int,X121: $int] :
          ( ( true_1 != 'IsHeap'(X120) )
          | ( true_1 != select2(X120,X119,allocated) )
          | ( true_1 = select2(X120,select2(X120,X119,X121),allocated) ) )
      & ( true_1 = x('System_String','System_IConvertible') )
      & ( 'System_ICloneable' != 'System_IConvertible' )
      & ( 'FirstConsistentOwner' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'ArrayCategoryValue' != 'System_UInt32' )
      & ( inv != 'ArrayCategoryValue' )
      & ( 'ArrayCategoryRef' != 'System_ICloneable' )
      & ( 'ArrayCategoryValue' != 'System_SByte' )
      & ( ownerFrame != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ! [X160: $int,X161: $int] :
          ( ( true_1 = select2(X161,'ClassRepr'(X160),allocated) )
          | ( true_1 != 'IsHeap'(X161) ) )
      & ( true_1 = x('System_Type','System_Object') )
      & ( elements != 'System_Type' )
      & ( 'System_IConvertible' = 'AsInterface'('System_IConvertible') )
      & ( 'SharingMode_LockProtected' != 'System_UInt16' )
      & ( 'PeerGroupPlaceholder' != 'System_UInt16' )
      & ! [X26: $int,X27: $int] : ( x_2(X26,X27) = $sum(X26,$uminus($product(x_1(X26,X27),X27))) )
      & ( 'PeerGroupPlaceholder' != 'FirstConsistentOwner' )
      & ( 'System_String' != 'FirstConsistentOwner' )
      & ( localinv != 'ArrayCategoryValue' )
      & ( ownerFrame != 'ArrayCategoryInt' )
      & ( exposeVersion != 'ArrayCategoryRef' )
      & ( 'System_UInt16' != 'System_IntPtr' )
      & ( 'ArrayCategoryValue' != 'System_String' )
      & ( 'System_String' != 'System_IEquatable_1___System_String' )
      & ( 'System_Array' != 'FirstConsistentOwner' )
      & ( inv != 'System_Char' )
      & ( 'ArrayCategoryNonNullRef' != 'System_UInt16' )
      & ( ownerFrame != 'System_IntPtr' )
      & ( 'System_Int16' != 'System_Char' )
      & ( 'ArrayCategoryValue' != 'System_IEquatable_1___System_String' )
      & ( 'SharingMode_LockProtected' != 'PeerGroupPlaceholder' )
      & ( 'SharingMode_LockProtected' != 'System_IEquatable_1___System_String' )
      & ! [X69: $int,X70: $int,X71: $int] :
        ? [X72: $int] :
          ( ( ( true_1 != 'NonNullRefArrayRaw'(X69,X71,X70) )
            | ( ( true_1 = x(X72,'System_Array') )
              & ( true_1 = x(X71,'ElementType'(X72)) )
              & ( 'Rank'(X69) = X70 ) ) )
          & ( typeof(X69) = X72 ) )
      & ! [X260: $int,X259: $int,X258: $int,X261: $int] :
          ( ( 'StructGet'('StructSet'(X259,X258,X261),X260) = 'StructGet'(X259,X260) )
          | ( X258 = X260 ) )
      & ( sharingMode != 'System_IComparable' )
      & ( 'StringLength'(stringLiteral0) = 19 )
      & ( inv != ownerFrame )
      & ( 'ArrayCategoryInt' != 'System_Type' )
      & ! [X356: $int,X358: $int,X357: $int] :
        ? [X359: $int,X360: $int] :
          ( ( ( X358 != X359 )
            | ( true_1 != x('UnboxedType'(X360),X359) )
            | ( X356 != X360 )
            | ( true_1 = x(typeof(X356),X358) ) )
          & ( 'Box'(X357,X356) = X360 )
          & ( 'AsInterface'(X358) = X359 ) )
      & ( exposeVersion != 'System_String' )
      & ( inv != 'System_Int64' )
      & ( 'NonNullFieldsAreInitialized' != 'FirstConsistentOwner' )
      & ( localinv != 'System_ICloneable' )
      & ( 'ArrayCategoryNonNullRef' != 'System_String' )
      & ( 'System_UIntPtr' != 'System_Collections_IEnumerable' )
      & ( elements != 'SharingMode_Unshared' )
      & ! [X257: $int,X255: $int,X256: $int] :
          ( ( true_1 != x(X256,'RefArray'(X255,X257)) )
          | ( 'ArrayCategoryRef' = 'ArrayCategory'(X256) ) )
      & ( ownerRef != 'ArrayCategoryNonNullRef' )
      & ( 'System_Char' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'ArrayCategoryValue' != 'Factorial' )
      & ( 'System_Int32' != 'System_UInt32' )
      & ( 'System_Object' != 'System_IConvertible' )
      & ( ( true_1 != 'PurityAxiomsCanBeAssumed' )
        | ! [X334: $int,X333: $int] :
          ? [X335: $int] :
            ( ( 'Factorial_recursiveFac_System_Int32'(X334,X333) = X335 )
            & ( ( true_1 != 'IsHeap'(X334) )
              | ( ( ( 0 != X333 )
                  | ( 1 = X335 ) )
                & ( ( 0 = X333 )
                  | ( $product(X333,'Factorial_recursiveFac_System_Int32'(X334,$sum(X333,$uminus(1)))) = X335 ) ) ) ) ) )
      & ( inv != 'System_UInt32' )
      & ! [X140: $int,X142: $int,X141: $int] :
          ( ( true_1 != x(typeof(X140),'RefArray'(X141,X142)) )
          | ( nullObject = X140 )
          | ( 'Rank'(X140) = X142 ) )
      & ( 'System_IEquatable_1___System_String' != 'System_IComparable_1___System_String' )
      & ( 'System_Array' != 'System_SByte' )
      & $less(int_9223372036854775807,int_18446744073709551615)
      & ( 'System_Boolean' != 'System_Object' )
      & ( 'System_Int64' != 'System_ICloneable' )
      & ( ownerRef != 'System_IComparable' )
      & ( 'System_UInt64' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ! [X291: $int] :
        ? [X292: $int] :
          ( ( true_1 = x(X291,X292) )
          & ( ( 'System_Object' = X291 )
            | ( X291 != X292 ) )
          & ( 'BaseClass'(X291) = X292 ) )
      & ! [X25: $int,X24: $int] :
          ( ( ( 'AsMutable'(X25) = X25 )
            & ( true_1 != 'IsImmutable'(X25) ) )
          | ( true_1 != x(X25,'AsMutable'(X24)) ) )
      & ( true_1 = 'IsValueType'('System_Char') )
      & ( 'FirstConsistentOwner' != 'System_Int32' )
      & ( 'PeerGroupPlaceholder' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'ArrayCategoryInt' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( ownerRef != 'System_Int16' )
      & ( sharingMode != 'System_Int16' )
      & ( elements != ownerRef )
      & ( 'System_ICloneable' != 'System_IComparable_1___System_String' )
      & ( 'NonNullFieldsAreInitialized' != 'System_SByte' )
      & ( 'System_IntPtr' != 'System_ICloneable' )
      & ( 'System_Char' != 'System_IntPtr' )
      & ( elements != 'ArrayCategoryRef' )
      & ( 'System_Int32' != 'System_IComparable_1___System_String' )
      & ( 'PeerGroupPlaceholder' != 'System_Collections_IEnumerable' )
      & ( ownerRef != 'PeerGroupPlaceholder' )
      & ! [X378: $int,X377: $int,X376: $int] :
        ? [X379: $int] :
          ( ( ( true_1 = x('System_Array',X376) )
            | ( true_1 != x(X379,X376) )
            | ( X376 = X379 ) )
          & ( 'IntArray'(X378,X377) = X379 ) )
      & ( 'System_Boolean' != 'System_SByte' )
      & ( localinv != 'System_Collections_IEnumerable' )
      & ( 'System_Collections_Generic_IEnumerable_1___System_Char' = 'AsInterface'('System_Collections_Generic_IEnumerable_1___System_Char') )
      & ( ownerFrame != 'System_IConvertible' )
      & ( 'System_Char' != 'System_UIntPtr' )
      & ( exposeVersion != 'System_Int16' )
      & ( 'ArrayCategoryRef' != 'System_Collections_IEnumerable' )
      & ( allocated != 'ArrayCategoryNonNullRef' )
      & ( true_1 != 'IsStaticField'(localinv) )
      & ( 'System_Boolean' != 'System_IntPtr' )
      & ( 'System_UInt64' != 'System_IConvertible' )
      & ( inv != 'System_Collections_IEnumerable' )
      & ( ownerFrame != 'System_IComparable' )
      & ( 'System_UInt16' != 'System_Int32' )
      & ( 'ArrayCategoryRef' != 'System_Int16' )
      & ! [X168: $int,X167: $int,X169: $int] :
        ? [X170: $int] :
          ( ( ( true_1 != x(X167,'NonNullRefArray'(X168,X169)) )
            | ( ( X167 != X168 )
              & ( 'NonNullRefArray'(X170,X169) = X167 )
              & ( true_1 = x(X170,X168) ) ) )
          & ( 'ElementType'(X167) = X170 ) )
      & ( elements != 'SharingMode_LockProtected' )
      & ( 'System_IComparable' != 'System_Collections_IEnumerable' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Int16' )
      & ( 'BaseClass'('Factorial') = X0 )
      & ( 'PeerGroupPlaceholder' != 'ArrayCategoryInt' )
      & ( 'System_Int64' != 'System_IConvertible' )
      & ! [X177: $int,X178: $int] :
          ( $less(X177,0)
          | ( x_2(X177,X178) = x_2($sum(X178,X177),X178) )
          | $less(X178,0) )
      & ( ownerRef != 'System_Int64' )
      & ( 'ArrayCategoryRef' != 'System_UInt32' )
      & ( 'System_Object' != 'System_Type' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Int64' )
      & ! [X186: $int,X187: $int] :
          ( ( true_1 != 'IsAllocated'(X187,X186) )
          | ( true_1 != 'IsHeap'(X187) )
          | ( true_1 = 'IsAllocated'(X187,'ElementProxy'(X186,$sum(0,$uminus(1)))) )
          | ( true_1 != x(typeof(X186),'System_Array') ) )
      & ( 'System_Array' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_Boolean' != 'System_Collections_IEnumerable' )
      & ( 'System_Boolean' != 'System_Byte' )
      & ( 'System_UInt32' != stringLiteral0 )
      & ( 'ArrayCategoryRef' != 'System_IEquatable_1___System_String' )
      & ( 'System_Boolean' != 'System_IComparable_1___System_String' )
      & ( true_1 = x('System_Collections_Generic_IEnumerable_1___System_Char','System_Object') )
      & ( 'System_IComparable' != 'Factorial' )
      & ( 'System_IEquatable_1___System_String' = 'AsInterface'('System_IEquatable_1___System_String') )
      & ( sharingMode != 'ArrayCategoryNonNullRef' )
      & ( 'PeerGroupPlaceholder' != 'System_IConvertible' )
      & ( 'System_Byte' != 'System_ICloneable' )
      & ( 'SharingMode_Unshared' != 'System_Int32' )
      & ( inv != 'System_Array' )
      & ! [X216: $int] : ~ $less('Rank'(X216),1)
      & ( sharingMode != 'System_IConvertible' )
      & ( allocated != 'Factorial' )
      & ( 'System_Array' != stringLiteral0 )
      & ( 'System_Int16' != 'System_IComparable_1___System_String' )
      & ( 'SharingMode_Unshared' != 'System_IConvertible' )
      & ( true_1 = 'IsValueType'('System_SByte') )
      & ( true_1 = 'IncludeInMainFrameCondition'(ownerRef) )
      & ( 'ArrayCategoryInt' != 'System_ICloneable' )
      & ( elements != localinv )
      & ( true_1 = 'IncludeInMainFrameCondition'(ownerFrame) )
      & ( 'System_UInt32' != 'System_IComparable_1___System_String' )
      & ( 'System_UIntPtr' != 'System_IComparable' )
      & ( 'SharingMode_LockProtected' != 'System_Boolean' )
      & ( exposeVersion != 'System_UInt16' )
      & ( 'System_String' != 'System_IComparable' )
      & ( 'SharingMode_LockProtected' != 'System_ICloneable' )
      & ( 'ArrayCategoryInt' != 'System_IntPtr' )
      & ( ownerRef != ownerFrame )
      & ( 'SharingMode_LockProtected' != 'System_IntPtr' )
      & ( 'System_Type' != 'System_String' )
      & ( elements != stringLiteral0 )
      & ( 'System_Object' != 'System_UInt64' )
      & ( inv != 'System_Boolean' )
      & ( 'NonNullFieldsAreInitialized' != 'System_UInt16' )
      & ( elements != 'PeerGroupPlaceholder' )
      & ( 'System_Array' != 'System_Boolean' )
      & ( 'System_UInt64' != 'System_IntPtr' )
      & ( true_1 = 'IsNotNull'(stringLiteral0,'System_String') )
      & ( 'System_Int16' != 'System_Int64' )
      & ( exposeVersion != 'System_UInt64' )
      & ( 'System_SByte' != 'System_IComparable_1___System_String' )
      & ! [X17: $int,X16: $int] :
        ? [X18: $int] :
          ( ( true_1 = x(X18,'System_Array') )
          & ( 'IntArray'(X16,X17) = X18 )
          & ( true_1 = x(X18,X18) ) )
      & ( true_1 = 'IsValueType'('System_UInt16') )
      & ( 'ArrayCategoryRef' != 'NonNullFieldsAreInitialized' )
      & ( inv != 'SharingMode_Unshared' )
      & ( elements != 'ArrayCategoryNonNullRef' )
      & ( localinv != 'PeerGroupPlaceholder' )
      & ( 'ArrayCategoryValue' != 'System_UInt64' )
      & ( true_1 = x('System_IComparable','System_IComparable') )
      & ( 'System_Boolean' != 'System_UInt32' )
      & ( inv != 'System_Int16' )
      & ( 'System_Object' != 'System_Byte' )
      & ( 'System_Type' != 'System_UInt16' )
      & ! [X176: $int] :
          ( ( ( true_1 = 'InRange'(X176,'System_Byte') )
            | ~ $less(X176,256)
            | $less(X176,0) )
          & ( ( $less(X176,256)
              & ~ $less(X176,0) )
            | ( true_1 != 'InRange'(X176,'System_Byte') ) ) )
      & ( 'ArrayCategoryInt' != 'System_IComparable' )
      & ( true_1 = 'IsMemberlessType'('System_IComparable') )
      & ( 'System_Array' != 'System_IConvertible' )
      & ( 'System_UIntPtr' != 'System_IComparable_1___System_String' )
      & ! [X148: $int,X146: $int,X147: $int,X149: $int] : ( 'ArrayIndexInvX'('ArrayIndex'(X146,X149,X148,X147)) = X148 )
      & ( $sum(int_m9223372036854775808,1) = $sum(0,$uminus(int_9223372036854775807)) )
      & ( allocated != ownerFrame )
      & ! [X127: $int,X128: $int] :
        ? [X129: $int] :
          ( ( x_2(X127,X128) = X129 )
          & ( $less(X127,0)
            | ( ~ $less(X129,0)
              & $less(X129,X128) )
            | ~ $less(0,X128) ) )
      & ( true_1 = x('System_Collections_Generic_IEnumerable_1___System_Char','System_Collections_Generic_IEnumerable_1___System_Char') )
      & ( sharingMode != 'System_UInt64' )
      & ( elements != 'Factorial' )
      & ! [X367: $int,X368: $int,X369: $int] :
        ? [X370: $int] :
          ( ( 'RefArrayGet'(select2(X367,X368,elements),X369) = X370 )
          & ( ( true_1 = x(typeof(X370),'ElementType'(typeof(X368))) )
            | ( nullObject = X370 )
            | ( true_1 != 'IsHeap'(X367) ) ) )
      & ( 'SharingMode_Unshared' != 'System_Byte' )
      & ! [X330: $int,X331: $int] :
        ? [X332: $int] :
          ( ( true_1 = x(X332,X332) )
          & ( true_1 = x(X332,'System_Array') )
          & ( 'RefArray'(X330,X331) = X332 ) )
      & ( 'SharingMode_LockProtected' != 'System_UInt32' )
      & ( localinv != 'System_IConvertible' )
      & ! [X374: $int,X373: $int,X375: $int] :
          ( ( true_1 != 'IsAllocated'(X374,X375) )
          | ( true_1 = 'IsAllocated'(X374,'RefArrayGet'(X375,X373)) ) )
      & ( inv != 'System_SByte' )
      & ( ownerRef != 'System_Array' )
      & ( 'ArrayCategoryNonNullRef' != 'NonNullFieldsAreInitialized' )
      & ( true_1 != 'IncludedInModifiesStar'(ownerRef) )
      & ( allocated != 'System_IComparable' )
      & ( 'System_Type' != 'System_UIntPtr' )
      & ! [X152: $int,X153: $int] :
        ? [X154: $int] :
          ( ( ~ $less(X152,0)
            | $less(X153,0)
            | ( $less(X154,$sum(0,$uminus(X152)))
              & ~ $less(X154,0) ) )
          & ( x_2(X153,X152) = X154 ) )
      & ( localinv != 'System_UInt32' )
      & $less(int_m9223372036854775808,int_m2147483648)
      & ( 'System_ICloneable' != 'System_IEquatable_1___System_String' )
      & ( 'System_UInt16' != stringLiteral0 )
      & ( allocated != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( ownerFrame != 'System_Char' )
      & ( localinv != 'System_UInt64' )
      & ( 'SharingMode_Unshared' != 'System_ICloneable' )
      & ( inv != 'System_IComparable' )
      & ( 'ArrayCategoryValue' != 'System_ICloneable' )
      & ( elements != 'System_Array' )
      & ( 'System_IComparable' = 'AsInterface'('System_IComparable') )
      & ( 'System_Int16' != stringLiteral0 )
      & ( 'System_Object' != 'NonNullFieldsAreInitialized' )
      & ( inv != 'System_IComparable_1___System_String' )
      & ! [X347: $int] : ~ $less('StringLength'(X347),0)
      & ! [X20: $int,X21: $int,X19: $int] :
          ( ( true_1 != 'IsHeap'(X20) )
          | ( true_1 = 'IsAllocated'(X20,select2(X20,X19,X21)) )
          | ( true_1 != select2(X20,X19,allocated) ) )
      & ( sharingMode != 'System_ICloneable' )
      & ! [X310: $int,X311: $int,X312: $int] :
        ? [X313: $int,X314: $int] :
          ( ( ( true_1 != x(select2(X310,X314,inv),X313) )
            | ( 'BaseClass'(X313) = select2(X310,X314,localinv) )
            | ( true_1 != select2(X310,X312,allocated) )
            | ( true_1 != 'IsHeap'(X310) )
            | ( 'PeerGroupPlaceholder' = X313 )
            | ( 'AsPureObject'(X312) != X312 )
            | ( nullObject = X312 )
            | ( select2(X310,X312,X311) = 'FieldDependsOnFCO'(X312,X311,select2(X310,select2(X310,X312,'FirstConsistentOwner'),exposeVersion)) ) )
          & ( select2(X310,X312,ownerFrame) = X313 )
          & ( select2(X310,X312,ownerRef) = X314 ) )
      & ( ownerFrame != 'System_Array' )
      & ( ownerRef != 'System_String' )
      & ( 'FirstConsistentOwner' != 'System_IConvertible' )
      & ! [X297: $int,X296: $int] :
          ( ( true_1 = select2(X297,X296,allocated) )
          | ( true_1 != 'IsAllocated'(X297,X296) ) )
      & ( 'System_IComparable_1___System_String' != 'System_IComparable' )
      & ( 'ArrayCategoryNonNullRef' != 'System_IConvertible' )
      & ( 'System_Int32' != 'System_IntPtr' )
      & ( sharingMode != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'ArrayCategoryNonNullRef' != 'System_UInt32' )
      & ( 'NonNullFieldsAreInitialized' != stringLiteral0 )
      & ( 'ArrayCategoryInt' != 'System_Byte' )
      & ( 'SharingMode_Unshared' != ownerFrame )
      & ( localinv != 'System_Type' )
      & ( 'SharingMode_Unshared' != 'System_Char' )
      & ( 'SharingMode_Unshared' != ownerRef )
      & ( ownerRef != 'ArrayCategoryValue' )
      & ( 'SharingMode_Unshared' != 'System_UInt32' )
      & ( 'System_Boolean' != 'System_UIntPtr' )
      & ( ownerRef != 'Factorial' )
      & ( true_1 = x('System_Array','System_Object') )
      & ( inv != 'System_Int32' )
      & ( 'ArrayCategoryRef' != 'System_Char' )
      & ( 'SharingMode_LockProtected' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_String' != stringLiteral0 )
      & ( 'System_String' != 'System_Int32' )
      & ( 'System_Boolean' != 'System_Int16' )
      & ( 'System_Int16' != 'System_UInt16' )
      & ( 'ArrayCategoryRef' != 'System_UInt16' )
      & ( 'System_String' != 'System_UInt16' )
      & ( 'System_Boolean' != 'System_ICloneable' )
      & ! [X109: $int,X108: $int,X111: $int,X110: $int] :
          ( ( true_1 != 'IsHeap'(X111) )
          | ( nullObject != select2(X111,X109,'AsNonNullRefField'(X108,X110)) )
          | ( nullObject = X109 )
          | ( ( true_1 != select2(X111,'BeingConstructed','NonNullFieldsAreInitialized') )
            & ( 'BeingConstructed' = X109 ) ) )
      & ( 'System_UInt16' != 'System_IComparable' )
      & ( 'PeerGroupPlaceholder' != 'System_Type' )
      & ( 'PeerGroupPlaceholder' != 'ArrayCategoryNonNullRef' )
      & ! [X301: $int,X302: $int] :
          ( ( 'PeerGroupPlaceholder' = select2(X302,'ClassRepr'(X301),ownerFrame) )
          | ( true_1 != 'IsHeap'(X302) ) )
      & ( exposeVersion != 'System_IComparable' )
      & ( 'System_UInt64' != 'System_ICloneable' )
      & ( ownerRef != 'System_Object' )
      & ( 'System_Object' != 'System_Char' )
      & ( inv != 'FirstConsistentOwner' )
      & ( 'System_UIntPtr' != stringLiteral0 )
      & ( 'System_Int16' != 'System_Collections_IEnumerable' )
      & ! [X285: $int,X284: $int,X283: $int] :
          ( ( ( true_1 = 'System_String_Equals_System_String_System_String'(X283,X284,X285) )
            | ( true_1 != 'StringEquals'(X284,X285) ) )
          & ( ( true_1 = 'StringEquals'(X284,X285) )
            | ( true_1 != 'System_String_Equals_System_String_System_String'(X283,X284,X285) ) )
          & ( ( X284 != X285 )
            | ( true_1 = 'StringEquals'(X284,X285) ) )
          & ( ( true_1 = 'System_String_Equals_System_String_System_String'(X283,X284,X285) )
            | ( true_1 != 'StringEquals'(X285,X284) ) )
          & ( ( true_1 = 'StringEquals'(X285,X284) )
            | ( true_1 != 'System_String_Equals_System_String_System_String'(X283,X284,X285) ) ) )
      & ( 'ArrayCategoryNonNullRef' != 'System_IntPtr' )
      & ( 'SharingMode_LockProtected' != 'ArrayCategoryRef' )
      & ( 'System_Array' != 'System_Int32' )
      & ( 'SharingMode_LockProtected' != 'System_Int32' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Object' )
      & ( inv != 'System_UInt64' )
      & ( 'System_Int16' != 'System_ICloneable' )
      & ( 'FirstConsistentOwner' != 'System_Int64' )
      & ( ownerRef != 'System_IntPtr' )
      & ( inv != 'System_UInt16' )
      & ( 'System_IEquatable_1___System_String' != stringLiteral0 )
      & ( 'System_Boolean' != 'System_UInt16' )
      & ( 'ArrayCategoryInt' != 'NonNullFieldsAreInitialized' )
      & ( elements != 'System_Boolean' )
      & ( elements != 'System_SByte' )
      & ! [X82: $int,X84: $int,X83: $int] :
          ( ( 'ArrayCategoryNonNullRef' = 'ArrayCategory'(X82) )
          | ( true_1 != x(X82,'NonNullRefArray'(X83,X84)) ) )
      & ! [X270: $int,X271: $int] :
          ( ( nullObject = X270 )
          | ( true_1 != x(typeof(X270),'AsImmutable'(X271)) )
          | ( 'BeingConstructed' = X270 )
          | ! [X272: $int] :
            ? [X273: $int] :
              ( ( ( ! [X274: $int] :
                      ( ( X270 = X274 )
                      | ( 'AsOwner'(X270,select2(X272,X274,ownerRef)) != X270 )
                      | ( 'PeerGroupPlaceholder' != select2(X272,X274,ownerFrame) ) )
                  & ( 'PeerGroupPlaceholder' = select2(X272,X270,ownerFrame) )
                  & ( select2(X272,X270,inv) = X273 )
                  & ( 'AsOwner'(X270,select2(X272,X270,ownerRef)) = X270 )
                  & ( select2(X272,X270,localinv) = X273 ) )
                | ( true_1 != 'IsHeap'(X272) ) )
              & ( typeof(X270) = X273 ) ) )
      & ( allocated != exposeVersion )
      & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_IComparable_1___System_String' )
      & ( 'PeerGroupPlaceholder' != 'System_Boolean' )
      & ( 'SharingMode_Unshared' != 'System_Boolean' )
      & ( 'System_UInt32' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_IEquatable_1___System_String' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'SharingMode_LockProtected' != 'System_Array' )
      & ( ownerFrame != 'System_Byte' )
      & ( 'ArrayCategoryRef' != 'System_Object' )
      & ( true_1 = x('Factorial','Factorial') )
      & ( 'System_Byte' != 'System_Int16' )
      & ( 'ArrayCategoryRef' != 'System_Type' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Int32' )
      & ( 'ArrayCategoryValue' != 'System_Int64' )
      & ( true_1 = x('System_IComparable_1___System_String','System_Object') )
      & ! [X90: $int,X91: $int] : ( 'Factorial_recursiveFac_System_Int32'(X90,X91) = 'Factorial_recursiveFac_System_Int32_1'(X91) )
      & ( 'System_Byte' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( ownerFrame != 'System_Boolean' )
      & ( 'SharingMode_Unshared' != 'System_IComparable' )
      & ( 'System_Int32' != 'System_UIntPtr' )
      & ( ownerFrame != 'System_Int64' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Collections_IEnumerable' )
      & ( 'System_UIntPtr' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ! [X145: $int] :
          ( ( ( true_1 = 'InRange'(X145,'System_Int64') )
            | $less(int_9223372036854775807,X145)
            | $less(X145,int_m9223372036854775808) )
          & ( ( ~ $less(int_9223372036854775807,X145)
              & ~ $less(X145,int_m9223372036854775808) )
            | ( true_1 != 'InRange'(X145,'System_Int64') ) ) )
      & ( 'System_UIntPtr' != 'Factorial' )
      & ( 'System_Int64' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_UInt16' != 'Factorial' )
      & ( 'System_UInt32' != 'System_ICloneable' )
      & ( 'System_String' != 'System_UInt32' )
      & ( 'System_Array' != 'System_ICloneable' )
      & ( 'System_Array' != 'System_Object' )
      & ! [X365: $int,X366: $int] : ( 'ElementType'('IntArray'(X366,X365)) = X366 )
      & ( localinv != 'SharingMode_LockProtected' )
      & ! [X242: $int,X243: $int,X241: $int,X240: $int] :
          ( ( true_1 != 'IsHeap'(X240) )
          | ( true_1 = 'Is'(select2(X240,X241,'AsRefField'(X243,X242)),X242) ) )
      & ( localinv != 'FirstConsistentOwner' )
      & ( true_1 = 'IncludedInModifiesStar'(exposeVersion) )
      & ( 'System_Array' != 'System_String' )
      & ( 'System_Byte' != 'System_IConvertible' )
      & ( ownerFrame != stringLiteral0 )
      & ( 'System_Boolean' != 'Factorial' )
      & ( elements != 'System_IConvertible' )
      & ( true_1 = 'IsValueType'('System_UInt32') )
      & ( 'ArrayCategoryRef' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_Object' != 'System_ICloneable' )
      & ( 'NonNullFieldsAreInitialized' != 'System_String' )
      & ( 'ArrayCategoryValue' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( inv != 'System_Type' )
      & ( localinv != 'System_IEquatable_1___System_String' )
      & ( inv != 'System_IConvertible' )
      & ! [X162: $int] : ( true_1 = 'IsNotNull'('TypeObject'(X162),'System_Type') )
      & ( 'ArrayCategoryValue' != 'System_Array' )
      & ( 'System_Array' != 'System_IntPtr' )
      & ( 'ArrayCategoryRef' != 'System_Boolean' )
      & ( 'SharingMode_Unshared' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( true_1 = x('System_String','System_ICloneable') )
      & ( 'System_UInt16' != 'System_Collections_IEnumerable' )
      & ( 'ArrayCategoryValue' != 'System_UInt16' )
      & ( 'System_IEquatable_1___System_String' != 'Factorial' )
      & ( 'System_UInt16' != 'System_UInt64' )
      & ! [X171: $int,X172: $int] : ~ $less('DimLength'(X171,X172),0)
      & ( sharingMode != stringLiteral0 )
      & ( 'System_IntPtr' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Collections_IEnumerable' )
      & ( 'System_Byte' != 'System_Collections_IEnumerable' )
      & ( 'System_UIntPtr' != 'System_IConvertible' )
      & ( 'PeerGroupPlaceholder' != 'System_UInt64' )
      & ( 'System_Object' != 'Factorial' )
      & ( sharingMode != 'FirstConsistentOwner' )
      & ! [X95: $int] :
          ( ( true_1 != 'IsValueType'(X95) )
          | ( ! [X96: $int] :
                ( ( true_1 != x(X95,X96) )
                | ( X95 = X96 ) )
            & ! [X97: $int] :
                ( ( X95 = X97 )
                | ( true_1 != x(X97,X95) ) ) ) )
      & ( ownerRef != 'System_Char' )
      & ( 'System_Boolean' != 'System_String' )
      & ( 'ArrayCategoryNonNullRef' != 'Factorial' )
      & ( 'System_ICloneable' != 'Factorial' )
      & ! [X46: $int] :
          ( ( ( true_1 = 'InRange'(X46,'System_UInt64') )
            | $less(int_18446744073709551615,X46)
            | $less(X46,0) )
          & ( ( ~ $less(int_18446744073709551615,X46)
              & ~ $less(X46,0) )
            | ( true_1 != 'InRange'(X46,'System_UInt64') ) ) ) ),
    inference(nnf_transformation,[],[f34]) ).

tff(f41,plain,
    ? [X1: $int,X0: $int] :
      ( ( 'ArrayCategoryInt' != 'System_Boolean' )
      & ( 'System_String' != 'System_Int64' )
      & ( true_1 = 'IsMemberlessType'('System_Collections_IEnumerable') )
      & ( true_1 = 'IsImmutable'('System_String') )
      & ( elements != sharingMode )
      & ! [X295: $int,X294: $int,X293: $int] :
          ( ( true_1 != 'IsHeap'(X293) )
          | ( true_1 = 'InRange'('IntArrayGet'(select2(X293,X295,elements),X294),'ElementType'(typeof(X295))) ) )
      & ( inv != sharingMode )
      & ( 'System_Object' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_String' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( exposeVersion != 'FirstConsistentOwner' )
      & ( 'System_Type' != 'System_Char' )
      & ( allocated != 'System_Array' )
      & ! [X251: $int,X250: $int,X249: $int] : ( 'IntArrayGet'('IntArraySet'(X250,X251,X249),X251) = X249 )
      & ( 'PeerGroupPlaceholder' != 'System_IComparable_1___System_String' )
      & ( 'ArrayCategoryValue' != 'System_Int32' )
      & ( 'ArrayCategoryValue' != 'System_Object' )
      & ( localinv != 'System_Byte' )
      & ( 'System_SByte' != 'System_ICloneable' )
      & ( 'SharingMode_Unshared' != stringLiteral0 )
      & ( true_1 != 'IsStaticField'(exposeVersion) )
      & ! [X65: $int,X66: $int,X64: $int] :
          ( ( true_1 = x('NonNullRefArray'(X65,X66),'NonNullRefArray'(X64,X66)) )
          | ( true_1 != x(X65,X64) ) )
      & ( 'System_Int32' != 'System_Char' )
      & ! [X252: $int,X253: $int,X254: $int] : ( 'RefArrayGet'('RefArraySet'(X252,X253,X254),X253) = X254 )
      & ( sharingMode != ownerFrame )
      & ( 'NonNullFieldsAreInitialized' != 'System_ICloneable' )
      & ( localinv != 'Factorial' )
      & ( ownerFrame != 'FirstConsistentOwner' )
      & ( 'System_SByte' != 'System_Int32' )
      & ( inv != 'ArrayCategoryInt' )
      & ( 'System_Type' != 'System_IEquatable_1___System_String' )
      & ! [X198: $int,X200: $int,X197: $int,X199: $int] :
        ? [X201: $int] :
          ( ( select2(X197,X199,'AsElementsPeerField'(X198,X200)) = X201 )
          & ? [X202: $int] :
              ( ( 'ElementProxy'(X201,X200) = X202 )
              & ( ( nullObject = X201 )
                | ( true_1 != 'IsHeap'(X197) )
                | ( ( select2(X197,X202,ownerRef) = select2(X197,X199,ownerRef) )
                  & ( select2(X197,X202,ownerFrame) = select2(X197,X199,ownerFrame) ) ) ) ) )
      & ! [X80: $int,X79: $int] :
        ? [X81: $int] :
          ( ( ( ~ $less(X81,0)
              & ~ $less($sum(X80,X79),X81) )
            | $less(X80,0)
            | $less(X79,0) )
          & ( or_1(X80,X79) = X81 ) )
      & ( 'FirstConsistentOwner' != 'System_UInt16' )
      & ( 'System_UInt64' != 'System_Collections_IEnumerable' )
      & ( sharingMode != 'System_Type' )
      & ( 'FirstConsistentOwner' != 'System_Int16' )
      & ( sharingMode != 'System_IComparable_1___System_String' )
      & ( 'SharingMode_LockProtected' != 'ArrayCategoryInt' )
      & ( 'SharingMode_Unshared' != 'System_SByte' )
      & ( true_1 = 'IsValueType'('System_UIntPtr') )
      & ( allocated != localinv )
      & ! [X33: $int,X32: $int] :
          ( ( ( ( true_1 = 'Is'(X32,X33) )
              & ( nullObject != X32 ) )
            | ( true_1 != 'IsNotNull'(X32,X33) ) )
          & ( ( true_1 = 'IsNotNull'(X32,X33) )
            | ( true_1 != 'Is'(X32,X33) )
            | ( nullObject = X32 ) ) )
      & ( 'SharingMode_Unshared' != 'System_Collections_IEnumerable' )
      & ( 'ArrayCategoryValue' != 'ArrayCategoryInt' )
      & ( 'System_ICloneable' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_Type' != 'System_UInt64' )
      & ( sharingMode != 'System_UIntPtr' )
      & ( 'ArrayCategoryInt' != 'ArrayCategoryRef' )
      & ( 'System_String' = 'AsDirectSubClass'('System_String',X1) )
      & ( 'ArrayCategoryValue' != 'NonNullFieldsAreInitialized' )
      & ( true_1 = x('System_IEquatable_1___System_String','System_IEquatable_1___System_String') )
      & ( 'System_Type' != 'System_UInt32' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( true_1 = x('System_Collections_Generic_IEnumerable_1___System_Char','System_Collections_IEnumerable') )
      & ! [X130: $int] :
          ( ( true_1 != x(X130,'System_String') )
          | ( 'System_String' = X130 ) )
      & ( ownerFrame != 'System_IComparable_1___System_String' )
      & ( 'System_Object' != 'System_Int32' )
      & ( 'System_Object' != 'FirstConsistentOwner' )
      & ( 'PeerGroupPlaceholder' != 'System_Object' )
      & ( exposeVersion != stringLiteral0 )
      & ( 'System_UInt64' != 'System_IComparable_1___System_String' )
      & ( allocated != 'System_Object' )
      & ( 'System_Type' != 'FirstConsistentOwner' )
      & ( exposeVersion != 'SharingMode_LockProtected' )
      & ! [X289: $int,X287: $int,X288: $int,X286: $int] :
          ( ( true_1 != 'IsHeap'(X287) )
          | ( true_1 = 'InRange'(select2(X287,X286,'AsRangeField'(X288,X289)),X289) ) )
      & ( 'System_Type' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'ArrayCategoryValue' != 'System_Int16' )
      & ( allocated != 'FirstConsistentOwner' )
      & ! [X22: $int] :
          ( ( ( $less(X22,65536)
              & ~ $less(X22,0) )
            | ( true_1 != 'InRange'(X22,'System_Char') ) )
          & ( ( true_1 = 'InRange'(X22,'System_Char') )
            | ~ $less(X22,65536)
            | $less(X22,0) ) )
      & ( 'System_Byte' != 'System_IntPtr' )
      & ! [X290: $int] :
          ( ( ( ~ $less(int_2147483647,X290)
              & ~ $less(X290,int_m2147483648) )
            | ( true_1 != 'InRange'(X290,'System_Int32') ) )
          & ( ( true_1 = 'InRange'(X290,'System_Int32') )
            | $less(int_2147483647,X290)
            | $less(X290,int_m2147483648) ) )
      & ( 'System_UIntPtr' != 'System_IEquatable_1___System_String' )
      & ! [X174: $int,X173: $int] :
        ? [X175: $int] :
          ( ( x_2(X173,X174) = X175 )
          & ( $less(0,X173)
            | ~ $less(0,X174)
            | ( ~ $less(0,X175)
              & $less($sum(0,$uminus(X174)),X175) ) ) )
      & ( 'System_IEquatable_1___System_String' != 'System_Collections_IEnumerable' )
      & ( 'System_UInt16' != 'System_IConvertible' )
      & ! [X78: $int,X77: $int] : ( 'UBound'(X78,X77) = $sum('DimLength'(X78,X77),$uminus(1)) )
      & ( 'System_Int64' != stringLiteral0 )
      & ( 'NonNullFieldsAreInitialized' != 'Factorial' )
      & ( 'ArrayCategoryNonNullRef' != 'System_ICloneable' )
      & ( 'ArrayCategoryRef' != 'System_SByte' )
      & ( exposeVersion != 'SharingMode_Unshared' )
      & ( 'ArrayCategoryInt' != 'System_IEquatable_1___System_String' )
      & ( 'System_Int32' != 'System_ICloneable' )
      & ( ownerRef != 'NonNullFieldsAreInitialized' )
      & ( exposeVersion != 'System_Int32' )
      & ( 'ArrayCategoryRef' != 'System_IConvertible' )
      & ( 'BaseClass'('System_String') = X1 )
      & ! [X303: $int,X304: $int] :
          ( ( ( nullObject != 'BoxTester'(X303,X304) )
            | ( 'UnboxedType'(X303) != X304 ) )
          & ( ( 'UnboxedType'(X303) = X304 )
            | ( nullObject = 'BoxTester'(X303,X304) ) ) )
      & ( 'PeerGroupPlaceholder' != 'System_Array' )
      & $less(int_m2147483648,$sum(0,$uminus(100000)))
      & ( 'System_IntPtr' != stringLiteral0 )
      & ! [X62: $int,X61: $int,X63: $int] :
          ( ( 'IfThenElse'(X63,X62,X61) = X62 )
          | ( true_1 != X63 ) )
      & ( ownerRef != 'System_ICloneable' )
      & ( 'ArrayCategoryInt' != 'System_Collections_IEnumerable' )
      & ( 'System_Type' != stringLiteral0 )
      & ( 'System_Byte' != 'System_IEquatable_1___System_String' )
      & ( 'ArrayCategoryValue' != 'ArrayCategoryNonNullRef' )
      & ( true_1 != 'IsImmutable'('System_Object') )
      & ( 'System_SByte' != stringLiteral0 )
      & ( ownerFrame != 'ArrayCategoryNonNullRef' )
      & ( elements != 'System_IEquatable_1___System_String' )
      & ( localinv != ownerRef )
      & ( localinv != exposeVersion )
      & ( 'ArrayCategoryRef' != 'System_Int64' )
      & ( 'System_Collections_IEnumerable' = 'AsInterface'('System_Collections_IEnumerable') )
      & ! [X217: $int,X218: $int,X219: $int] :
        ? [X220: $int] :
          ( ( 'ElementType'(X219) = X220 )
          & ( ( true_1 = x('System_Array',X219) )
            | ( true_1 != x('NonNullRefArray'(X218,X217),X219) )
            | ( ( 'NonNullRefArray'(X220,X217) = X219 )
              & ( true_1 = x(X218,X220) ) ) ) )
      & ( true_1 = 'IsMemberlessType'('System_IConvertible') )
      & ( 'SharingMode_LockProtected' != 'System_Char' )
      & ( 'SharingMode_LockProtected' != 'System_IComparable' )
      & ( true_1 = x('System_Collections_IEnumerable','System_Object') )
      & ( 'PeerGroupPlaceholder' != 'System_Char' )
      & ! [X42: $int] : ( shr(X42,0) = X42 )
      & ( localinv != 'ArrayCategoryNonNullRef' )
      & ( localinv != 'System_Array' )
      & ( 'System_ICloneable' = 'AsInterface'('System_ICloneable') )
      & ( 'ArrayCategoryRef' != 'ArrayCategoryNonNullRef' )
      & ( 'System_Byte' != stringLiteral0 )
      & ( true_1 = x('System_IComparable_1___System_String','System_IComparable_1___System_String') )
      & ( 'System_Int64' != 'System_UIntPtr' )
      & ( allocated != 'System_UInt16' )
      & ! [X185: $int,X183: $int,X184: $int] :
          ( ( true_1 != 'IsAllocated'(X183,X184) )
          | ( true_1 = 'IsAllocated'(X183,'StructGet'(X184,X185)) ) )
      & ( 'SharingMode_LockProtected' != 'System_IComparable_1___System_String' )
      & ( 'ArrayCategoryValue' != 'System_Type' )
      & ( elements != 'System_UInt16' )
      & ( 'PeerGroupPlaceholder' != 'System_SByte' )
      & ( ownerRef != 'ArrayCategoryInt' )
      & ( allocated != 'SharingMode_Unshared' )
      & ( 'System_Int16' != 'System_IntPtr' )
      & ( 'PeerGroupPlaceholder' != 'NonNullFieldsAreInitialized' )
      & ( 'PeerGroupPlaceholder' != 'ArrayCategoryRef' )
      & ( ownerFrame != 'NonNullFieldsAreInitialized' )
      & ( ownerRef != stringLiteral0 )
      & ( exposeVersion != 'System_SByte' )
      & ( inv != exposeVersion )
      & ( 'System_IntPtr' != 'System_IConvertible' )
      & ( 'ArrayCategoryInt' != 'System_Char' )
      & ( 'ArrayCategoryNonNullRef' != 'System_UIntPtr' )
      & ( inv != stringLiteral0 )
      & ( allocated != sharingMode )
      & ( ownerFrame != 'ArrayCategoryRef' )
      & ( true_1 = 'IncludedInModifiesStar'(elements) )
      & ! [X355: $int,X353: $int,X354: $int] :
          ( ( ( true_1 = 'System_String_Equals_System_String_System_String'(X355,X354,X353) )
            | ( true_1 != 'System_String_Equals_System_String'(X355,X354,X353) ) )
          & ( ( true_1 = 'System_String_Equals_System_String'(X355,X354,X353) )
            | ( true_1 != 'System_String_Equals_System_String_System_String'(X355,X354,X353) ) ) )
      & ( 'ArrayCategoryNonNullRef' != 'System_IEquatable_1___System_String' )
      & ( 'PeerGroupPlaceholder' != 'System_Int64' )
      & ( elements != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_Array' != 'System_UInt64' )
      & ( 'System_Type' != 'System_Int64' )
      & ( exposeVersion != 'System_UIntPtr' )
      & ( ownerRef != 'System_UInt64' )
      & ( 'System_Type' != 'System_ICloneable' )
      & ( 'System_Byte' != 'System_Char' )
      & ( 'SharingMode_Unshared' != 'System_Object' )
      & ( inv != 'PeerGroupPlaceholder' )
      & ( sharingMode != 'System_Collections_IEnumerable' )
      & ( ownerRef != 'ArrayCategoryRef' )
      & ( 'NonNullFieldsAreInitialized' != 'System_IntPtr' )
      & ( 'System_UInt16' != 'System_UIntPtr' )
      & ! [X264: $int,X263: $int,X262: $int] :
        ? [X265: $int] :
          ( ( 'ElementType'(X262) = X265 )
          & ( ( true_1 = x('System_Array',X262) )
            | ( ( 'RefArray'(X265,X264) = X262 )
              & ( true_1 = x(X263,X265) ) )
            | ( true_1 != x('RefArray'(X263,X264),X262) ) ) )
      & ( exposeVersion != 'System_Array' )
      & ( ownerRef != 'System_IComparable_1___System_String' )
      & ( elements != 'NonNullFieldsAreInitialized' )
      & ( 'System_UInt32' != 'System_UInt64' )
      & ( ownerFrame != 'System_Type' )
      & ( exposeVersion != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & $less(int_2147483647,int_4294967295)
      & ( inv != 'System_Object' )
      & ( allocated != 'System_Int32' )
      & ( 'System_Byte' != 'System_UIntPtr' )
      & ( allocated != 'System_IEquatable_1___System_String' )
      & ( 'System_String' != 'System_Byte' )
      & ( 'System_Type' != 'NonNullFieldsAreInitialized' )
      & ( 'SharingMode_Unshared' != 'System_Array' )
      & ( 'ArrayCategoryRef' != 'System_UInt64' )
      & ( 'System_Char' != stringLiteral0 )
      & ( 'SharingMode_LockProtected' != 'System_Byte' )
      & ( 'System_IntPtr' != 'Factorial' )
      & ! [X221: $int] :
          ( ( 'DimLength'(X221,0) = 'Length'(X221) )
          | ( 1 != 'Rank'(X221) ) )
      & ! [X150: $int,X151: $int] :
          ( ( true_1 != 'Is'(X150,X151) )
          | ( 'As'(X150,X151) = X150 ) )
      & ( 'FirstConsistentOwner' != 'System_Char' )
      & ( 'ArrayCategoryNonNullRef' != stringLiteral0 )
      & ( 'System_Array' != 'System_Collections_IEnumerable' )
      & ! [X10: $int,X8: $int,X9: $int] :
        ? [X12: $int,X11: $int] :
          ( ( ( true_1 != x(typeof(X10),'System_Array') )
            | ( nullObject = X11 )
            | ( ( select2(X8,X11,ownerRef) = select2(X8,X12,ownerRef) )
              & ( select2(X8,X12,ownerFrame) = select2(X8,X11,ownerFrame) ) )
            | ( true_1 != 'IsHeap'(X8) )
            | ( true_1 = 'IsImmutable'(typeof(X11)) ) )
          & ( 'ElementProxy'(X10,$sum(0,$uminus(1))) = X12 )
          & ( 'RefArrayGet'(select2(X8,X10,elements),X9) = X11 ) )
      & ( 'PeerGroupPlaceholder' != 'System_IEquatable_1___System_String' )
      & ( elements != 'System_IComparable' )
      & ( 'System_Char' != 'System_IEquatable_1___System_String' )
      & ( exposeVersion != 'ArrayCategoryInt' )
      & ( 'System_Byte' != 'Factorial' )
      & ( 'System_SByte' != 'System_UInt16' )
      & ( allocated != 'ArrayCategoryRef' )
      & ( 'System_Int32' != 'System_IEquatable_1___System_String' )
      & ( allocated != 'NonNullFieldsAreInitialized' )
      & ( 'FirstConsistentOwner' != stringLiteral0 )
      & ( true_1 != 'IsStaticField'(inv) )
      & ( exposeVersion != 'ArrayCategoryValue' )
      & ( exposeVersion != 'System_Object' )
      & ( 'System_Int32' != stringLiteral0 )
      & ( 'ArrayCategoryValue' != 'System_IConvertible' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Boolean' )
      & ( ownerFrame != 'System_IEquatable_1___System_String' )
      & ( 'ArrayCategoryRef' != 'System_IntPtr' )
      & ( allocated != 'System_Collections_IEnumerable' )
      & ( 'System_SByte' != 'System_IConvertible' )
      & ( 'System_SByte' != 'System_IComparable' )
      & ( sharingMode != 'System_Int64' )
      & ( 'System_SByte' != 'System_Collections_IEnumerable' )
      & ( 'ArrayCategoryValue' != 'System_IComparable' )
      & ( 'System_Object' = X0 )
      & ( true_1 = x('System_String','System_IComparable_1___System_String') )
      & ! [X38: $int,X37: $int] :
        ? [X39: $int,X40: $int,X41: $int] :
          ( ( typeof(X38) = X41 )
          & ( select2(X37,X38,ownerRef) = X40 )
          & ( select2(X37,X38,ownerFrame) = X39 )
          & ( ( true_1 != 'IsHeap'(X37) )
            | ( ( select2(X37,X38,localinv) = X41 )
              & ( select2(X37,X38,inv) = X41 ) )
            | ( true_1 != x(select2(X37,X40,inv),X39) )
            | ( 'PeerGroupPlaceholder' = X39 )
            | ( select2(X37,X40,localinv) = 'BaseClass'(X39) ) ) )
      & ( elements != 'System_UInt64' )
      & ! [X350: $int,X351: $int,X352: $int] : ( 'ValueArrayGet'('ValueArraySet'(X352,X350,X351),X350) = X351 )
      & ( 'System_UInt64' != 'Factorial' )
      & ( 'System_Boolean' != 'FirstConsistentOwner' )
      & ( sharingMode != 'System_Char' )
      & ( 'PeerGroupPlaceholder' != 'System_Int32' )
      & ( 'SharingMode_Unshared' != 'System_Int16' )
      & ( 'System_IComparable_1___System_String' != stringLiteral0 )
      & ( sharingMode != 'SharingMode_Unshared' )
      & ( inv != 'SharingMode_LockProtected' )
      & ( 'FirstConsistentOwner' != 'System_Collections_IEnumerable' )
      & ( 'System_Int32' != 'System_IConvertible' )
      & ! [X165: $int,X164: $int,X166: $int] :
          ( ( 'ArrayCategoryValue' = 'ArrayCategory'(X166) )
          | ( true_1 != x(X166,'ValueArray'(X164,X165)) ) )
      & ( 'PeerGroupPlaceholder' != 'System_IComparable' )
      & ( 'System_UInt16' != 'System_UInt32' )
      & ( 'System_Type' != 'System_Byte' )
      & ( 'System_Boolean' != 'NonNullFieldsAreInitialized' )
      & ( ownerFrame != 'PeerGroupPlaceholder' )
      & ( 'System_Boolean' != 'System_UInt64' )
      & ( 'System_UInt16' != 'System_ICloneable' )
      & ! [X53: $int,X54: $int] :
          ( ( ( true_1 = x(typeof(X54),X53) )
            | ( nullObject = X54 )
            | ( true_1 != 'Is'(X54,X53) ) )
          & ( ( true_1 = 'Is'(X54,X53) )
            | ( ( true_1 != x(typeof(X54),X53) )
              & ( nullObject != X54 ) ) ) )
      & ( 'System_SByte' != 'Factorial' )
      & ( 'System_Object' = 'DeclType'(elements) )
      & ( ownerRef != 'System_IEquatable_1___System_String' )
      & ( 'Factorial' != stringLiteral0 )
      & ! [X47: $int,X50: $int,X48: $int,X49: $int] : ( 'ArrayIndexInvY'('ArrayIndex'(X50,X49,X47,X48)) = X48 )
      & ( 'System_IConvertible' != 'Factorial' )
      & ! [X276: $int,X277: $int,X275: $int] : ( 'StructGet'('StructSet'(X276,X275,X277),X275) = X277 )
      & ( 'System_Boolean' != 'System_Int64' )
      & ( 'FirstConsistentOwner' != 'System_Byte' )
      & ( allocated != 'System_UInt64' )
      & ( 'FirstConsistentOwner' != 'System_IntPtr' )
      & ( elements != 'System_Object' )
      & ( 'System_UInt16' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_ICloneable' != 'System_IComparable' )
      & ( 'NonNullFieldsAreInitialized' != 'System_IEquatable_1___System_String' )
      & ( 'System_Char' != 'System_Collections_IEnumerable' )
      & ( localinv != 'SharingMode_Unshared' )
      & ( 'PeerGroupPlaceholder' != 'System_UIntPtr' )
      & ! [X139: $int,X138: $int,X137: $int] :
          ( ( true_1 = x('RefArray'(X137,X139),'RefArray'(X138,X139)) )
          | ( true_1 != x(X137,X138) ) )
      & ! [X194: $int,X195: $int] :
        ? [X196: $int] :
          ( ( true_1 = x(X196,X196) )
          & ( true_1 = x(X196,'System_Array') )
          & ( 'ValueArray'(X195,X194) = X196 ) )
      & ( elements != 'System_Collections_IEnumerable' )
      & ( 'System_SByte' != 'System_UInt32' )
      & ( sharingMode != 'PeerGroupPlaceholder' )
      & ! [X192: $int] :
        ? [X193: $int] :
          ( ~ $less(int_2147483647,X193)
          & ( 'Length'(X192) = X193 )
          & ~ $less(X193,0) )
      & ( 'System_ICloneable' != stringLiteral0 )
      & ( true_1 = x('System_String','System_Collections_Generic_IEnumerable_1___System_Char') )
      & ( 'System_String' != 'System_ICloneable' )
      & ( 'NonNullFieldsAreInitialized' != 'System_IConvertible' )
      & ( exposeVersion != 'System_Int64' )
      & ( ownerFrame != 'System_UInt64' )
      & ( exposeVersion != 'System_Boolean' )
      & ( sharingMode != 'System_Int32' )
      & ! [X43: $int,X44: $int] :
        ? [X45: $int] :
          ( ( typeof(X43) = X45 )
          & ( ( nullObject = X43 )
            | ( ( select2(X44,X43,localinv) = X45 )
              & ( select2(X44,X43,inv) = X45 ) )
            | ( true_1 != 'IsHeap'(X44) )
            | ( true_1 != x(X45,'System_Array') ) ) )
      & ( 'System_String' != 'System_IComparable_1___System_String' )
      & ( 'System_Object' != 'System_String' )
      & ! [X341: $int,X339: $int,X338: $int,X340: $int] :
          ( ( X338 = X339 )
          | ( 'ValueArrayGet'(X341,X338) = 'ValueArrayGet'('ValueArraySet'(X341,X339,X340),X338) ) )
      & ! [X204: $int,X205: $int] :
          ( ( x_2(X204,X205) = x_2($sum(X204,X205),X205) )
          | $less(X205,0)
          | $less(X204,0) )
      & ( 'ArrayCategoryValue' != 'System_Byte' )
      & ( 'System_Byte' != 'System_UInt32' )
      & ( 'System_Type' != 'System_IComparable_1___System_String' )
      & ( 'System_Object' != 'System_IComparable_1___System_String' )
      & ( 'ArrayCategoryInt' != 'System_UInt32' )
      & ( true_1 = x('System_String','System_Collections_IEnumerable') )
      & ( 'SharingMode_Unshared' != 'ArrayCategoryValue' )
      & ( elements != 'System_Char' )
      & ( inv != 'System_UIntPtr' )
      & ( 'System_Int16' != 'System_Int32' )
      & ( 'System_Boolean' != 'System_Char' )
      & ! [X116: $int,X117: $int,X115: $int] :
          ( ( 'ArrayCategoryInt' = 'ArrayCategory'(X116) )
          | ( true_1 != x(X116,'IntArray'(X115,X117)) ) )
      & ( 'ArrayCategoryNonNullRef' != 'System_SByte' )
      & ! [X267: $int] : ( 'ClassReprInv'('ClassRepr'(X267)) = X267 )
      & ( 'ArrayCategoryInt' != 'System_Array' )
      & ! [X6: $int,X5: $int,X7: $int] :
          ( ( nullObject = X5 )
          | ( 'Rank'(X5) = X6 )
          | ( true_1 != x(typeof(X5),'IntArray'(X7,X6)) ) )
      & ( elements != 'System_Int16' )
      & ! [X112: $int,X113: $int] :
        ? [X114: $int] :
          ( ( ~ $less(X113,0)
            | $less(0,X112)
            | ( ~ $less(0,X114)
              & $less(X113,X114) ) )
          & ( x_2(X112,X113) = X114 ) )
      & ( 'System_Object' != 'System_Collections_IEnumerable' )
      & ( ownerFrame != 'System_Object' )
      & ( 'ArrayCategoryInt' != stringLiteral0 )
      & ( inv != 'System_ICloneable' )
      & ( 'FirstConsistentOwner' != 'System_UInt32' )
      & ! [X188: $int,X189: $int] : ( 'ElementType'('RefArray'(X188,X189)) = X188 )
      & ( 'System_Collections_IEnumerable' != stringLiteral0 )
      & ( allocated != 'System_IComparable_1___System_String' )
      & ( ownerRef != 'System_Byte' )
      & ( 'System_Object' != 'System_UInt16' )
      & ( 'ArrayCategoryRef' != 'System_IComparable' )
      & ( true_1 = 'IsMemberlessType'('System_IComparable_1___System_String') )
      & ( allocated != 'System_Char' )
      & ( localinv != 'System_UInt16' )
      & ( 'System_Int16' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( allocated != 'System_Boolean' )
      & ( 'System_Array' != 'System_Byte' )
      & ! [X362: $int,X363: $int,X364: $int,X361: $int] :
          ( ( X362 = X364 )
          | ( 'RefArrayGet'('RefArraySet'(X363,X362,X361),X364) = 'RefArrayGet'(X363,X364) ) )
      & ( elements != 'System_ICloneable' )
      & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != stringLiteral0 )
      & ( exposeVersion != 'ArrayCategoryNonNullRef' )
      & ( true_1 = x('System_ICloneable','System_ICloneable') )
      & ! [X326: $int] :
          ( ( ( ~ $less(X326,0)
              & ~ $less(int_4294967295,X326) )
            | ( true_1 != 'InRange'(X326,'System_UInt32') ) )
          & ( ( true_1 = 'InRange'(X326,'System_UInt32') )
            | $less(X326,0)
            | $less(int_4294967295,X326) ) )
      & ( exposeVersion != 'System_Type' )
      & ( 'System_UInt16' != 'System_IComparable_1___System_String' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Int32' )
      & ( sharingMode != 'Factorial' )
      & ( 'System_Type' != 'System_IConvertible' )
      & ( 'Factorial' = 'AsDirectSubClass'('Factorial',X0) )
      & $less(int_4294967295,int_9223372036854775807)
      & ( allocated != inv )
      & ( true_1 = x('System_IConvertible','System_IConvertible') )
      & ( 'System_UInt32' != 'System_Int64' )
      & ( 'ArrayCategoryInt' != 'ArrayCategoryNonNullRef' )
      & ! [X67: $int,X68: $int] :
          ( ( nullObject = 'As'(X68,X67) )
          | ( true_1 = 'Is'(X68,X67) ) )
      & ( 'System_Int64' != 'System_Collections_IEnumerable' )
      & ! [X122: $int,X125: $int,X124: $int,X123: $int] :
        ? [X126: $int] :
          ( ( 'Box'(X124,X126) = X126 )
          & ( 'UnboxedType'(X126) = X122 )
          & ( 'BoxFunc'(X124,X122,X125,X123) = X126 ) )
      & ( 'System_Char' != 'System_ICloneable' )
      & ( 'System_UInt32' != 'System_Collections_IEnumerable' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Byte' )
      & ( allocated != 'SharingMode_LockProtected' )
      & ( 'System_SByte' != 'System_UInt64' )
      & ( 'SharingMode_LockProtected' != 'System_UIntPtr' )
      & ( exposeVersion != 'System_IComparable_1___System_String' )
      & ( 'System_UIntPtr' != 'System_IntPtr' )
      & ! [X92: $int,X94: $int,X93: $int] :
          ( $less(X93,2)
          | ~ $less(X92,X94)
          | ( x_2(X94,X93) != x_2(X92,X93) )
          | ~ $less(X94,$sum(X92,X93)) )
      & ( 'System_Byte' != 'System_UInt64' )
      & ( 'System_Array' != 'System_IComparable_1___System_String' )
      & ( 'System_Boolean' != 'System_Int32' )
      & ( 'System_UInt32' != 'System_IEquatable_1___System_String' )
      & ( allocated != 'System_UIntPtr' )
      & ( allocated != 'System_Int64' )
      & ( exposeVersion != 'System_IConvertible' )
      & ( exposeVersion != 'Factorial' )
      & ( true_1 = x('System_Collections_IEnumerable','System_Collections_IEnumerable') )
      & ( 'System_UInt64' != 'System_Char' )
      & ! [X58: $int,X56: $int,X60: $int,X57: $int,X59: $int] :
          ( ( true_1 != 'IsHeap'(X59) )
          | ( nullObject != 'RefArrayGet'(select2(X59,X60,elements),X58) )
          | ( true_1 != x(typeof(X60),'NonNullRefArray'(X56,X57)) ) )
      & ( 'System_String' != 'System_UIntPtr' )
      & ( 'System_UInt32' != 'Factorial' )
      & ( sharingMode != 'System_String' )
      & ! [X136: $int,X135: $int,X134: $int] :
          ( ( true_1 != x(X135,'AsDirectSubClass'(X136,X134)) )
          | ( 'OneClassDown'(X135,X134) = X136 ) )
      & ( exposeVersion != 'System_Collections_IEnumerable' )
      & ( 'SharingMode_LockProtected' != 'System_Int16' )
      & ( 'System_Int32' != 'System_Int64' )
      & ( 'System_Array' != 'System_IComparable' )
      & ( exposeVersion != 'System_IEquatable_1___System_String' )
      & ( 'System_IntPtr' != 'System_IComparable_1___System_String' )
      & ( 'ArrayCategoryRef' != 'System_Array' )
      & ( true_1 = 'IncludeInMainFrameCondition'(allocated) )
      & ( 'PeerGroupPlaceholder' != 'System_UInt32' )
      & ( 'System_Char' != 'System_IComparable_1___System_String' )
      & ( 'System_Object' = 'DeclType'(exposeVersion) )
      & ( inv != 'System_String' )
      & ( inv != 'System_IEquatable_1___System_String' )
      & ( true_1 != 'IncludeInMainFrameCondition'(inv) )
      & ( 'System_IComparable_1___System_String' != 'System_Collections_IEnumerable' )
      & ( 'FirstConsistentOwner' != 'System_UIntPtr' )
      & ( 'SharingMode_LockProtected' != 'System_String' )
      & ( 'SharingMode_LockProtected' != ownerFrame )
      & ( 'System_ICloneable' != 'System_Collections_IEnumerable' )
      & ( exposeVersion != 'System_ICloneable' )
      & ( inv != localinv )
      & ( true_1 = x('System_IEquatable_1___System_String','System_Object') )
      & ( 'ArrayCategoryNonNullRef' != 'System_Int64' )
      & ( localinv != 'System_UIntPtr' )
      & ( localinv != 'System_Int32' )
      & ! [X222: $int,X223: $int,X224: $int] :
        ? [X225: $int] :
          ( ( ( true_1 != x(X224,X225) )
            | ( X224 = X225 ) )
          & ( 'IntArray'(X223,X222) = X225 ) )
      & ( 'System_UInt16' != 'System_Int64' )
      & ( 'System_SByte' != 'System_Char' )
      & $less(100000,int_2147483647)
      & ( ownerRef != 'System_UIntPtr' )
      & ( true_1 != 'IncludeInMainFrameCondition'(localinv) )
      & ( 'System_Array' != 'NonNullFieldsAreInitialized' )
      & ( 'PeerGroupPlaceholder' != 'ArrayCategoryValue' )
      & ( 'System_Array' != 'System_UInt16' )
      & ( 'PeerGroupPlaceholder' != 'Factorial' )
      & ( 'ArrayCategoryValue' != 'System_UIntPtr' )
      & ( localinv != 'ArrayCategoryRef' )
      & ! [X336: $int,X337: $int] :
          ( ( $less(X336,0)
            & $less(X337,0) )
          | ~ $less(and_1(X337,X336),0) )
      & ( 'System_String' != 'System_UInt64' )
      & ( true_1 = 'IsMemberlessType'('System_IEquatable_1___System_String') )
      & ! [X215: $int,X214: $int] : ( 0 = 'LBound'(X214,X215) )
      & ( ownerFrame != 'System_UIntPtr' )
      & ( elements != 'System_UInt32' )
      & ( 'System_Boolean' != 'System_IEquatable_1___System_String' )
      & ! [X190: $int,X191: $int] : ( 'System_Object' = typeof('ElementProxyStruct'(X191,X190)) )
      & ( ownerRef != 'System_Collections_IEnumerable' )
      & ( 'PeerGroupPlaceholder' != 'System_ICloneable' )
      & ( ownerRef != 'System_SByte' )
      & ( true_1 = 'IsValueType'('System_Boolean') )
      & ! [X315: $int,X316: $int] :
          ( $less(X316,1)
          | ( shr(X315,X316) = x_1(shr(X315,$sum(X316,$uminus(1))),2) ) )
      & ( ownerFrame != 'Factorial' )
      & ( elements != 'System_UIntPtr' )
      & ( exposeVersion != 'System_IntPtr' )
      & ( allocated != ownerRef )
      & ( 'System_Char' != 'System_IComparable' )
      & ! [X280: $int,X281: $int,X278: $int,X279: $int] :
          ( ( 'BoxFunc'(X281,X280,X278,X279) = X281 )
          | ( true_1 = 'IsValueType'('UnboxedType'(X281)) ) )
      & ( true_1 != 'IsStaticField'(allocated) )
      & ( 'System_IntPtr' != 'System_IComparable' )
      & ( 'FirstConsistentOwner' != 'System_IComparable_1___System_String' )
      & ( sharingMode != 'System_Object' )
      & ( true_1 = x('System_String','System_String') )
      & ( sharingMode != 'System_SByte' )
      & ( 'System_Byte' != 'System_Int32' )
      & ( 'SharingMode_Unshared' != 'System_Int64' )
      & ( true_1 != 'IsStaticField'(elements) )
      & ( true_1 = 'IsValueType'('System_Byte') )
      & ( allocated != 'PeerGroupPlaceholder' )
      & ( 'ArrayCategoryInt' != 'System_UInt16' )
      & ( 'System_Object' != 'System_IComparable' )
      & ( 'NonNullFieldsAreInitialized' != 'System_UInt32' )
      & ( 'System_Int64' != 'System_IComparable_1___System_String' )
      & ( 'SharingMode_Unshared' != 'Factorial' )
      & ( ownerFrame != 'System_UInt16' )
      & ! [X203: $int] : ( shl(X203,0) = X203 )
      & ! [X372: $int,X371: $int] : ( 'ElementType'('NonNullRefArray'(X372,X371)) = X372 )
      & ( 'ArrayCategoryInt' != 'Factorial' )
      & ( 'System_Boolean' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_String' != 'System_Collections_IEnumerable' )
      & ! [X158: $int,X159: $int] :
          ( ( shl(X159,X158) = $product(shl(X159,$sum(X158,$uminus(1))),2) )
          | $less(X158,1) )
      & ( 'ArrayCategoryNonNullRef' != 'System_Type' )
      & ( 'System_UInt32' != 'System_IConvertible' )
      & ( 'System_Array' != 'System_UInt32' )
      & ( allocated != 'System_UInt32' )
      & ( elements != 'System_Byte' )
      & ( localinv != 'System_Char' )
      & ( 'SharingMode_Unshared' != 'System_Type' )
      & ( 'System_SByte' != 'System_UIntPtr' )
      & ( exposeVersion != ownerFrame )
      & ( sharingMode != 'System_Array' )
      & ! [X23: $int] : ( nullObject != 'ClassRepr'(X23) )
      & ( 'ArrayCategoryInt' != 'System_IConvertible' )
      & ( 'System_Type' != 'System_Int32' )
      & ( 'ArrayCategoryNonNullRef' != 'System_IComparable' )
      & ( elements != ownerFrame )
      & ( 'System_IConvertible' != 'System_IEquatable_1___System_String' )
      & ( 'System_Array' != 'System_Char' )
      & ( allocated != 'ArrayCategoryValue' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Char' )
      & ( 'ArrayCategoryInt' != 'System_Object' )
      & ( exposeVersion != 'System_Char' )
      & ( 'SharingMode_Unshared' != 'FirstConsistentOwner' )
      & ( sharingMode != 'System_UInt16' )
      & ( 'System_SByte' != 'System_IEquatable_1___System_String' )
      & ( ownerRef != 'FirstConsistentOwner' )
      & ( 'System_String' = 'AsImmutable'('System_String') )
      & ( 'ArrayCategoryInt' != 'System_SByte' )
      & ( 'System_Object' != 'System_Int64' )
      & ( 'System_Object' != 'System_IntPtr' )
      & ( ownerFrame != 'System_SByte' )
      & ( 'System_Object' = X1 )
      & ( allocated != elements )
      & ( 'SharingMode_LockProtected' != 'System_Type' )
      & ( 'System_Int16' != 'System_IEquatable_1___System_String' )
      & ( 'System_SByte' != 'System_Byte' )
      & ! [X321: $int,X322: $int] :
          ( ( 'Box'('Unbox'(X322),X322) = X322 )
          | ( nullObject = 'BoxTester'(X322,X321) ) )
      & ( true_1 = x('System_String','System_IComparable') )
      & ( 'SharingMode_Unshared' != 'SharingMode_LockProtected' )
      & ( localinv != sharingMode )
      & ( 'SharingMode_LockProtected' != 'System_Collections_IEnumerable' )
      & ( 'ArrayCategoryRef' != 'System_Int32' )
      & ( 'ArrayCategoryInt' != 'System_Int64' )
      & ( 'System_Int64' != 'System_Char' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Char' )
      & ( 'SharingMode_LockProtected' != stringLiteral0 )
      & ( 'System_Char' != 'System_IConvertible' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'ArrayCategoryRef' != 'System_IComparable_1___System_String' )
      & ( 'SharingMode_Unshared' != 'ArrayCategoryNonNullRef' )
      & ( 'NonNullFieldsAreInitialized' != 'System_IComparable' )
      & ! [X266: $int] :
          ( ( ( ~ $less(X266,0)
              & $less(X266,65536) )
            | ( true_1 != 'InRange'(X266,'System_UInt16') ) )
          & ( ( true_1 = 'InRange'(X266,'System_UInt16') )
            | $less(X266,0)
            | ~ $less(X266,65536) ) )
      & ( elements != 'ArrayCategoryInt' )
      & ( 'Factorial' = 'AsMutable'('Factorial') )
      & ( 'SharingMode_LockProtected' != 'ArrayCategoryValue' )
      & ( inv != ownerRef )
      & ( 'System_Int64' != 'System_IComparable' )
      & ( 'SharingMode_Unshared' != 'ArrayCategoryInt' )
      & ( exposeVersion != ownerRef )
      & ( 'System_String' != 'System_Int16' )
      & ( elements != 'System_Int32' )
      & ( sharingMode != 'System_UInt32' )
      & ( 'ArrayCategoryRef' != 'System_UIntPtr' )
      & ! [X163: $int] : ( true_1 != x(typeof('ClassRepr'(X163)),'System_Object') )
      & ! [X236: $int,X233: $int,X235: $int,X234: $int] :
        ? [X237: $int] :
          ( ( ( nullObject = X237 )
            | ( true_1 != 'IsHeap'(X236) )
            | ( ( select2(X236,X237,ownerRef) = X233 )
              & ( select2(X236,X237,ownerFrame) = X235 ) ) )
          & ( select2(X236,X233,'AsRepField'(X234,X235)) = X237 ) )
      & ( 'ArrayCategoryNonNullRef' != 'System_UInt64' )
      & ( 'FirstConsistentOwner' != 'System_SByte' )
      & ( 'SharingMode_LockProtected' != 'System_IConvertible' )
      & ( 'System_String' != 'System_IConvertible' )
      & ( 'System_Int64' != 'System_IEquatable_1___System_String' )
      & ( 'ArrayCategoryRef' != 'System_String' )
      & ( 'SharingMode_LockProtected' != 'System_UInt64' )
      & ( 'SharingMode_LockProtected' != 'Factorial' )
      & ( 'PeerGroupPlaceholder' != 'System_String' )
      & ( inv != 'ArrayCategoryRef' )
      & ( 'PeerGroupPlaceholder' != 'System_Int16' )
      & ( 'System_IConvertible' != 'System_IComparable_1___System_String' )
      & ( 'System_IConvertible' != 'System_IComparable' )
      & ( $sum(int_m2147483648,1) = $sum(0,$uminus(int_2147483647)) )
      & ( inv != 'Factorial' )
      & ( 'System_IntPtr' != 'System_Collections_IEnumerable' )
      & ( 'ArrayCategoryValue' != stringLiteral0 )
      & ( elements != 'ArrayCategoryValue' )
      & ( 'NonNullFieldsAreInitialized' != 'System_IComparable_1___System_String' )
      & ( 'System_UInt32' != 'System_UIntPtr' )
      & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'Factorial' )
      & ( 'ArrayCategoryInt' != 'FirstConsistentOwner' )
      & ( 'System_IComparable_1___System_String' != 'Factorial' )
      & ( 'System_Array' != 'System_UIntPtr' )
      & ( true_1 = 'IncludeInMainFrameCondition'(exposeVersion) )
      & ( 'PeerGroupPlaceholder' != 'System_Byte' )
      & ( 'System_String' != 'System_Char' )
      & ( 'System_UIntPtr' != 'System_ICloneable' )
      & ( 'System_Object' != 'System_UIntPtr' )
      & ! [X73: $int,X74: $int,X75: $int] :
        ? [X76: $int] :
          ( ( ( ( true_1 = x(X76,X74) )
              & ( 'RefArray'(X76,X75) = X73 )
              & ( X73 != X74 ) )
            | ( true_1 != x(X73,'RefArray'(X74,X75)) ) )
          & ( 'ElementType'(X73) = X76 ) )
      & ( 'FirstConsistentOwner' != 'Factorial' )
      & ( 'FirstConsistentOwner' != 'System_ICloneable' )
      & ! [X344: $int,X343: $int] :
        ? [X345: $int] :
          ( ( true_1 = x(X345,X345) )
          & ( true_1 = x(X345,'System_Array') )
          & ( 'NonNullRefArray'(X343,X344) = X345 ) )
      & ( 'SharingMode_LockProtected' != 'FirstConsistentOwner' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Int16' )
      & ( sharingMode != 'ArrayCategoryRef' )
      & ( ownerFrame != 'System_Collections_IEnumerable' )
      & ! [X15: $int,X14: $int,X13: $int] :
          ( ( true_1 != 'InRange'(X14,X15) )
          | ( 'IntToInt'(X14,X13,X15) = X14 ) )
      & ( true_1 != 'IsImmutable'('Factorial') )
      & ! [X101: $int,X103: $int,X102: $int] :
          ( ( true_1 = 'StringEquals'(X101,X102) )
          | ( true_1 != 'StringEquals'(X103,X102) )
          | ( true_1 != 'StringEquals'(X101,X103) ) )
      & ! [X282: $int] : ( true_1 != 'IsMemberlessType'(typeof(X282)) )
      & ( 'System_Int16' != 'System_UInt64' )
      & ( 'System_UInt32' != 'System_IntPtr' )
      & ( sharingMode != 'ArrayCategoryValue' )
      & ( 'SharingMode_LockProtected' != 'System_SByte' )
      & ( 'SharingMode_Unshared' != 'PeerGroupPlaceholder' )
      & ( 'System_Type' != 'System_Int16' )
      & ( localinv != 'System_Object' )
      & ! [X349: $int,X348: $int] : ( 'ElementType'('ValueArray'(X348,X349)) = X348 )
      & ( ownerRef != 'System_Int32' )
      & ! [X105: $int,X104: $int,X106: $int] :
        ? [X107: $int] :
          ( ( 'ValueArray'(X104,X105) = X107 )
          & ( ( X106 = X107 )
            | ( true_1 != x(X106,X107) ) ) )
      & ( 'System_String' != 'System_IntPtr' )
      & ( 'ArrayCategoryRef' != stringLiteral0 )
      & ( 'ArrayCategoryRef' != 'Factorial' )
      & ( localinv != 'NonNullFieldsAreInitialized' )
      & ( allocated != 'System_String' )
      & ( 'System_Type' != 'System_SByte' )
      & ( 'System_UInt16' != 'System_Char' )
      & ( allocated != 'System_SByte' )
      & ! [X209: $int,X211: $int,X207: $int,X208: $int,X210: $int] :
        ? [X212: $int] :
          ( ( select2(X208,X211,'AsElementsRepField'(X210,X209,X207)) = X212 )
          & ? [X213: $int] :
              ( ( ( true_1 != 'IsHeap'(X208) )
                | ( nullObject = X212 )
                | ( ( select2(X208,X213,ownerRef) = X211 )
                  & ( select2(X208,X213,ownerFrame) = X209 ) ) )
              & ( 'ElementProxy'(X212,X207) = X213 ) ) )
      & ( 'SharingMode_LockProtected' != 'NonNullFieldsAreInitialized' )
      & ( allocated != 'System_IConvertible' )
      & ( ownerRef != 'System_IConvertible' )
      & ( 'ArrayCategoryValue' != 'System_Collections_IEnumerable' )
      & ( ownerFrame != 'System_UInt32' )
      & ( allocated != 'ArrayCategoryInt' )
      & ( 'System_Object' != 'System_UInt32' )
      & ( 'System_Char' != 'Factorial' )
      & ( 'System_Type' != 'System_IntPtr' )
      & ( elements != 'System_String' )
      & ( localinv != ownerFrame )
      & ( 'System_Int16' != 'System_UInt32' )
      & ( 'SharingMode_Unshared' != 'System_UInt64' )
      & ( localinv != stringLiteral0 )
      & ( 'ArrayCategoryValue' != 'FirstConsistentOwner' )
      & ( exposeVersion != sharingMode )
      & ( 'System_Boolean' != 'System_IConvertible' )
      & ( localinv != 'System_IntPtr' )
      & ! [X327: $int,X329: $int,X328: $int] :
          ( ( 'IfThenElse'(X329,X327,X328) = X328 )
          | ( true_1 = X329 ) )
      & ( ownerFrame != 'System_ICloneable' )
      & ( 'NonNullFieldsAreInitialized' != 'System_UIntPtr' )
      & ! [X28: $int,X30: $int,X29: $int] :
        ? [X31: $int] :
          ( ( ( true_1 != x(X31,X28) )
            | ( X28 = X31 )
            | ( true_1 = x('System_Array',X28) ) )
          & ( 'ValueArray'(X29,X30) = X31 ) )
      & ( sharingMode != 'NonNullFieldsAreInitialized' )
      & ( inv != 'NonNullFieldsAreInitialized' )
      & ( 'System_Object' != 'System_SByte' )
      & ( 'ArrayCategoryInt' != 'System_Int16' )
      & ! [X157: $int,X155: $int,X156: $int] :
          ( ( nullObject = X155 )
          | ( true_1 != x(typeof(X155),'ValueArray'(X156,X157)) )
          | ( 'Rank'(X155) = X157 ) )
      & ! [X36: $int,X34: $int,X35: $int] :
          ( ( 'Rank'(X35) = X34 )
          | ( nullObject = X35 )
          | ( true_1 != x(typeof(X35),'NonNullRefArray'(X36,X34)) ) )
      & ( 'PeerGroupPlaceholder' != stringLiteral0 )
      & ! [X239: $int,X238: $int] :
          ( ( ( 'AsImmutable'(X238) = X238 )
            & ( true_1 = 'IsImmutable'(X238) ) )
          | ( true_1 != x(X238,'AsImmutable'(X239)) ) )
      & ( 'System_Object' = 'DeclType'('NonNullFieldsAreInitialized') )
      & ( 'System_SByte' != 'System_IntPtr' )
      & ( 'System_SByte' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_UInt32' != 'System_Char' )
      & ( ownerRef != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( ownerFrame != 'ArrayCategoryValue' )
      & ( inv != 'System_Byte' )
      & ( inv != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ! [X248: $int,X247: $int] :
          ( ( 'AsRefField'(X248,X247) = X248 )
          | ( 'AsNonNullRefField'(X248,X247) != X248 ) )
      & ! [X299: $int,X298: $int,X300: $int] :
          ( ( true_1 = 'IsAllocated'(X300,'ValueArrayGet'(X299,X298)) )
          | ( true_1 != 'IsAllocated'(X300,X299) ) )
      & ( 'System_Byte' != 'System_Int64' )
      & ! [X143: $int,X144: $int] : ( 'System_Object' = typeof('ElementProxy'(X144,X143)) )
      & ( 'SharingMode_Unshared' != 'System_IEquatable_1___System_String' )
      & ( 'System_Array' != 'System_IEquatable_1___System_String' )
      & ( exposeVersion != 'NonNullFieldsAreInitialized' )
      & ( allocated != 'System_Int16' )
      & ( 'System_Array' != 'System_Int16' )
      & ( localinv != 'System_Boolean' )
      & ( sharingMode != 'ArrayCategoryInt' )
      & ( sharingMode != 'SharingMode_LockProtected' )
      & ( localinv != 'System_IComparable_1___System_String' )
      & ! [X85: $int] :
          ( ! [X87: $int,X86: $int] :
            ? [X88: $int] :
              ( ? [X89: $int] :
                  ( ( ( ( select2(X87,X88,localinv) = X89 )
                      & ( select2(X87,X88,inv) = X89 ) )
                    | ( true_1 != 'IsHeap'(X87) ) )
                  & ( typeof(X88) = X89 ) )
              & ( 'Box'(X86,X85) = X88 ) )
          | ( true_1 != 'IsValueType'('UnboxedType'(X85)) ) )
      & ( 'System_Int32' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_Array' != 'Factorial' )
      & ( ownerRef != 'System_UInt16' )
      & ( 'System_UInt16' != 'System_IEquatable_1___System_String' )
      & ( exposeVersion != 'System_Byte' )
      & ( 'System_SByte' != 'System_Int64' )
      & ( 'ArrayCategoryNonNullRef' != 'System_IComparable_1___System_String' )
      & ( inv != 'System_IntPtr' )
      & ( true_1 != 'IncludedInModifiesStar'(ownerFrame) )
      & ( 'System_UInt64' != 'System_IEquatable_1___System_String' )
      & ( 'SharingMode_Unshared' != 'System_UIntPtr' )
      & ( 'SharingMode_LockProtected' != ownerRef )
      & ( exposeVersion != 'PeerGroupPlaceholder' )
      & ( sharingMode != 'System_IEquatable_1___System_String' )
      & ( 'System_IComparable_1___System_String' = 'AsInterface'('System_IComparable_1___System_String') )
      & ( 'System_Boolean' != 'System_IComparable' )
      & ! [X98: $int,X99: $int] :
        ? [X100: $int] :
          ( ( 'Box'(X98,X99) = X100 )
          & ( ( X98 = X99 )
            | ( X99 != X100 )
            | ( true_1 != x('UnboxedType'(X100),'System_Object') ) ) )
      & ( elements != inv )
      & ( elements != 'System_IntPtr' )
      & ( 'System_UInt64' != 'System_UIntPtr' )
      & ( exposeVersion != 'System_UInt32' )
      & ! [X52: $int,X51: $int] : ( 'Unbox'('Box'(X52,X51)) = X52 )
      & ( 'ArrayCategoryInt' != 'System_IComparable_1___System_String' )
      & ( 'System_Int16' != 'System_UIntPtr' )
      & ( 'ArrayCategoryInt' != 'System_String' )
      & ( 'SharingMode_LockProtected' != 'System_Object' )
      & ( true_1 = 'IsMemberlessType'('System_ICloneable') )
      & ( 'System_Byte' != 'System_IComparable_1___System_String' )
      & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_IComparable' )
      & ( 'SharingMode_LockProtected' != 'ArrayCategoryNonNullRef' )
      & ( true_1 = x('System_IComparable','System_Object') )
      & ( ownerFrame != 'System_Int16' )
      & ! [X118: $int] :
          ( ( ( $less(X118,32768)
              & ~ $less(X118,$sum(0,$uminus(32768))) )
            | ( true_1 != 'InRange'(X118,'System_Int16') ) )
          & ( ( true_1 = 'InRange'(X118,'System_Int16') )
            | ~ $less(X118,32768)
            | $less(X118,$sum(0,$uminus(32768))) ) )
      & ! [X227: $int,X226: $int] :
        ? [X228: $int] :
          ( ( select2(X226,X227,'FirstConsistentOwner') = X228 )
          & ? [X229: $int,X230: $int,X231: $int,X232: $int] :
              ( ( select2(X226,X228,ownerFrame) = X229 )
              & ( select2(X226,X227,ownerFrame) = X232 )
              & ( select2(X226,X228,ownerRef) = X230 )
              & ( ( true_1 != select2(X226,X227,allocated) )
                | ( 'PeerGroupPlaceholder' = X232 )
                | ( select2(X226,X231,localinv) = 'BaseClass'(X232) )
                | ( nullObject = X227 )
                | ( true_1 != x(select2(X226,X231,inv),X232) )
                | ( ( true_1 = select2(X226,X228,allocated) )
                  & ( ( true_1 != x(select2(X226,X230,inv),X229) )
                    | ( 'PeerGroupPlaceholder' = X229 )
                    | ( 'BaseClass'(X229) = select2(X226,X230,localinv) ) )
                  & ( nullObject != X228 ) )
                | ( true_1 != 'IsHeap'(X226) ) )
              & ( select2(X226,X227,ownerRef) = X231 ) ) )
      & ( allocated != 'System_Byte' )
      & ( 'System_String' != 'Factorial' )
      & ( ownerFrame != 'System_Int32' )
      & ( sharingMode != 'System_IntPtr' )
      & ( 'System_Object' != 'System_IEquatable_1___System_String' )
      & ( localinv != 'System_IComparable' )
      & ( true_1 = 'IsValueType'('System_Int64') )
      & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_Collections_IEnumerable' )
      & ( true_1 = x('System_String','System_IEquatable_1___System_String') )
      & ( 'System_Int16' != 'System_IComparable' )
      & ( 'System_Type' != 'Factorial' )
      & ( 'ArrayCategoryRef' != 'FirstConsistentOwner' )
      & ( elements != exposeVersion )
      & ( 'ArrayCategoryInt' != 'System_UInt64' )
      & ( 'System_Byte' != 'System_IComparable' )
      & ( 'System_UInt64' != stringLiteral0 )
      & ! [X2: $int,X3: $int] :
        ? [X4: $int] :
          ( ( ~ $less(X2,32768)
            | $less(16,X3)
            | $less(X3,0)
            | $less(X2,0)
            | ( ~ $less(int_2147483647,X4)
              & ~ $less(X4,0) ) )
          & ( shl(X2,X3) = X4 ) )
      & ( sharingMode != 'System_Byte' )
      & ( 'ArrayCategoryValue' != 'System_IntPtr' )
      & ( 'ArrayCategoryNonNullRef' != 'FirstConsistentOwner' )
      & ( 'System_Int64' != 'Factorial' )
      & ( 'System_Int16' != 'System_IConvertible' )
      & ! [X346: $int] :
          ( ( ( $less(X346,128)
              & ~ $less(X346,$sum(0,$uminus(128))) )
            | ( true_1 != 'InRange'(X346,'System_SByte') ) )
          & ( ( true_1 = 'InRange'(X346,'System_SByte') )
            | ~ $less(X346,128)
            | $less(X346,$sum(0,$uminus(128))) ) )
      & ( localinv != 'System_String' )
      & ( inv != 'ArrayCategoryNonNullRef' )
      & ( 'SharingMode_Unshared' != 'System_IComparable_1___System_String' )
      & ( localinv != 'System_SByte' )
      & ! [X131: $int,X132: $int] :
        ? [X133: $int] :
          ( ( $sum(X132,$uminus(X131)) = X133 )
          & ( $less(X131,0)
            | $less(X133,0)
            | ( x_2(X133,X131) = x_2(X132,X131) ) ) )
      & ( 'ArrayCategoryRef' != 'System_Byte' )
      & ( 'System_IComparable' != stringLiteral0 )
      & ( 'System_IntPtr' != 'System_IEquatable_1___System_String' )
      & ( 'System_UInt32' != 'System_IComparable' )
      & ( 'System_String' != 'System_SByte' )
      & ( ownerFrame != 'System_String' )
      & ( 'SharingMode_LockProtected' != 'System_Int64' )
      & ( true_1 = 'IsMemberlessType'('System_Collections_Generic_IEnumerable_1___System_Char') )
      & ! [X245: $int,X246: $int,X244: $int] :
          ( ( true_1 != 'System_String_Equals_System_String_System_String'(X245,X246,X244) )
          | ( 'System_String_IsInterned_System_String_notnull'(X245,X244) = 'System_String_IsInterned_System_String_notnull'(X245,X246) )
          | ( nullObject = X246 )
          | ( nullObject = X244 ) )
      & ( 'System_Boolean' != stringLiteral0 )
      & ( 'ArrayCategoryNonNullRef' != 'System_Array' )
      & ( 'ArrayCategoryValue' != 'System_Char' )
      & ( 'FirstConsistentOwner' != 'System_UInt64' )
      & ( 'PeerGroupPlaceholder' != 'System_IntPtr' )
      & ( true_1 = 'IsValueType'('System_UInt64') )
      & ! [X180: $int,X179: $int,X181: $int,X182: $int] :
          ( ( 'IntArrayGet'('IntArraySet'(X182,X181,X179),X180) = 'IntArrayGet'(X182,X180) )
          | ( X180 = X181 ) )
      & ( 'ArrayCategoryValue' != 'System_IComparable_1___System_String' )
      & ( 'System_IConvertible' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( true_1 = x('System_ICloneable','System_Object') )
      & ( 'SharingMode_Unshared' != 'System_UInt16' )
      & ( ownerRef != 'System_Type' )
      & ( 'ArrayCategoryValue' != 'ArrayCategoryRef' )
      & ( 'System_Boolean' != 'System_Type' )
      & ( allocated != 'System_Type' )
      & ( 'System_Int32' != 'System_Collections_IEnumerable' )
      & ( 'System_Int64' != 'System_UInt64' )
      & ( localinv != 'ArrayCategoryInt' )
      & ( localinv != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( sharingMode != ownerRef )
      & ! [X324: $int,X323: $int] :
        ? [X325: $int] :
          ( ( min(X324,X323) = X325 )
          & ( ( X323 = X325 )
            | ( X324 = X325 ) )
          & ~ $less(X323,X325)
          & ~ $less(X324,X325) )
      & ! [X206: $int] : ( 'TypeName'('TypeObject'(X206)) = X206 )
      & ( true_1 = 'IsValueType'('System_Int32') )
      & ( 'ArrayCategoryNonNullRef' != 'System_Byte' )
      & ( allocated != 'System_ICloneable' )
      & ( elements != 'FirstConsistentOwner' )
      & ( 'ArrayCategoryInt' != 'System_UIntPtr' )
      & ( 'NonNullFieldsAreInitialized' != 'System_UInt64' )
      & ( allocated != 'System_IntPtr' )
      & ( 'System_Type' != 'System_Collections_IEnumerable' )
      & ! [X318: $int,X317: $int,X319: $int] :
        ? [X320: $int] :
          ( ( ( nullObject = X320 )
            | ( ( select2(X317,X320,ownerRef) = select2(X317,X319,ownerRef) )
              & ( select2(X317,X320,ownerFrame) = select2(X317,X319,ownerFrame) ) )
            | ( true_1 != 'IsHeap'(X317) ) )
          & ( select2(X317,X319,'AsPeerField'(X318)) = X320 ) )
      & ( 'System_Array' != 'System_Int64' )
      & ( localinv != 'System_Int64' )
      & ( 'SharingMode_Unshared' != 'System_String' )
      & ( true_1 = x('System_IConvertible','System_Object') )
      & ( 'System_SByte' != 'System_Int16' )
      & ( sharingMode != 'System_Boolean' )
      & ( 'SharingMode_Unshared' != 'NonNullFieldsAreInitialized' )
      & ( ownerRef != 'System_Boolean' )
      & ! [X55: $int] :
          ( ( true_1 != 'IsHeap'(X55) )
          | ( true_1 = select2(X55,stringLiteral0,allocated) ) )
      & ( 'System_IConvertible' != stringLiteral0 )
      & ( 'System_Int32' != 'System_UInt64' )
      & ( true_1 = 'IsValueType'('System_IntPtr') )
      & ( 'System_Object' != 'System_Int16' )
      & ( localinv != 'System_Int16' )
      & ( 'System_Byte' != 'System_UInt16' )
      & ( 'System_Int32' != 'System_IComparable' )
      & ( 'System_IConvertible' != 'System_Collections_IEnumerable' )
      & ( 'System_Array' != 'System_Type' )
      & ( 'System_Int32' != 'Factorial' )
      & ( 'System_Int16' != 'Factorial' )
      & ( 'SharingMode_Unshared' != 'System_IntPtr' )
      & ! [X306: $int,X305: $int] :
        ? [X307: $int] :
          ( ~ $less(X307,X305)
          & ( max(X306,X305) = X307 )
          & ~ $less(X307,X306)
          & ( ( X305 = X307 )
            | ( X306 = X307 ) ) )
      & ( 'System_Object' != stringLiteral0 )
      & ( 'FirstConsistentOwner' != 'System_IComparable' )
      & ( 'ArrayCategoryInt' != 'System_Int32' )
      & ( 'ArrayCategoryValue' != 'System_Boolean' )
      & ( elements != 'System_Int64' )
      & ( true_1 = 'IsValueType'('System_Int16') )
      & ( 'Factorial' != 'System_Collections_IEnumerable' )
      & ( true_1 != 'IncludeInMainFrameCondition'('FirstConsistentOwner') )
      & ( ownerRef != 'System_UInt32' )
      & ( 'FirstConsistentOwner' != 'System_IEquatable_1___System_String' )
      & ( 'SharingMode_Unshared' != 'ArrayCategoryRef' )
      & ( elements != 'System_IComparable_1___System_String' )
      & ( 'System_IEquatable_1___System_String' != 'System_IComparable' )
      & ( 'System_Type' != 'System_IComparable' )
      & ( true_1 = 'IncludeInMainFrameCondition'(elements) )
      & ( allocated != stringLiteral0 )
      & ( 'System_Int64' != 'System_IntPtr' )
      & ! [X342: $int] :
          ( ( stringLiteral0 = 'System_String_IsInterned_System_String_notnull'(X342,stringLiteral0) )
          | ( true_1 != 'IsHeap'(X342) ) )
      & ( 'System_UInt64' != 'System_IComparable' )
      & ! [X119: $int,X120: $int,X121: $int] :
          ( ( true_1 != 'IsHeap'(X120) )
          | ( true_1 != select2(X120,X119,allocated) )
          | ( true_1 = select2(X120,select2(X120,X119,X121),allocated) ) )
      & ( true_1 = x('System_String','System_IConvertible') )
      & ( 'System_ICloneable' != 'System_IConvertible' )
      & ( 'FirstConsistentOwner' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'ArrayCategoryValue' != 'System_UInt32' )
      & ( inv != 'ArrayCategoryValue' )
      & ( 'ArrayCategoryRef' != 'System_ICloneable' )
      & ( 'ArrayCategoryValue' != 'System_SByte' )
      & ( ownerFrame != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ! [X160: $int,X161: $int] :
          ( ( true_1 = select2(X161,'ClassRepr'(X160),allocated) )
          | ( true_1 != 'IsHeap'(X161) ) )
      & ( true_1 = x('System_Type','System_Object') )
      & ( elements != 'System_Type' )
      & ( 'System_IConvertible' = 'AsInterface'('System_IConvertible') )
      & ( 'SharingMode_LockProtected' != 'System_UInt16' )
      & ( 'PeerGroupPlaceholder' != 'System_UInt16' )
      & ! [X26: $int,X27: $int] : ( x_2(X26,X27) = $sum(X26,$uminus($product(x_1(X26,X27),X27))) )
      & ( 'PeerGroupPlaceholder' != 'FirstConsistentOwner' )
      & ( 'System_String' != 'FirstConsistentOwner' )
      & ( localinv != 'ArrayCategoryValue' )
      & ( ownerFrame != 'ArrayCategoryInt' )
      & ( exposeVersion != 'ArrayCategoryRef' )
      & ( 'System_UInt16' != 'System_IntPtr' )
      & ( 'ArrayCategoryValue' != 'System_String' )
      & ( 'System_String' != 'System_IEquatable_1___System_String' )
      & ( 'System_Array' != 'FirstConsistentOwner' )
      & ( inv != 'System_Char' )
      & ( 'ArrayCategoryNonNullRef' != 'System_UInt16' )
      & ( ownerFrame != 'System_IntPtr' )
      & ( 'System_Int16' != 'System_Char' )
      & ( 'ArrayCategoryValue' != 'System_IEquatable_1___System_String' )
      & ( 'SharingMode_LockProtected' != 'PeerGroupPlaceholder' )
      & ( 'SharingMode_LockProtected' != 'System_IEquatable_1___System_String' )
      & ! [X69: $int,X70: $int,X71: $int] :
        ? [X72: $int] :
          ( ( ( true_1 != 'NonNullRefArrayRaw'(X69,X71,X70) )
            | ( ( true_1 = x(X72,'System_Array') )
              & ( true_1 = x(X71,'ElementType'(X72)) )
              & ( 'Rank'(X69) = X70 ) ) )
          & ( typeof(X69) = X72 ) )
      & ! [X260: $int,X259: $int,X258: $int,X261: $int] :
          ( ( 'StructGet'('StructSet'(X259,X258,X261),X260) = 'StructGet'(X259,X260) )
          | ( X258 = X260 ) )
      & ( sharingMode != 'System_IComparable' )
      & ( 'StringLength'(stringLiteral0) = 19 )
      & ( inv != ownerFrame )
      & ( 'ArrayCategoryInt' != 'System_Type' )
      & ! [X356: $int,X358: $int,X357: $int] :
        ? [X359: $int,X360: $int] :
          ( ( ( X358 != X359 )
            | ( true_1 != x('UnboxedType'(X360),X359) )
            | ( X356 != X360 )
            | ( true_1 = x(typeof(X356),X358) ) )
          & ( 'Box'(X357,X356) = X360 )
          & ( 'AsInterface'(X358) = X359 ) )
      & ( exposeVersion != 'System_String' )
      & ( inv != 'System_Int64' )
      & ( 'NonNullFieldsAreInitialized' != 'FirstConsistentOwner' )
      & ( localinv != 'System_ICloneable' )
      & ( 'ArrayCategoryNonNullRef' != 'System_String' )
      & ( 'System_UIntPtr' != 'System_Collections_IEnumerable' )
      & ( elements != 'SharingMode_Unshared' )
      & ! [X257: $int,X255: $int,X256: $int] :
          ( ( true_1 != x(X256,'RefArray'(X255,X257)) )
          | ( 'ArrayCategoryRef' = 'ArrayCategory'(X256) ) )
      & ( ownerRef != 'ArrayCategoryNonNullRef' )
      & ( 'System_Char' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'ArrayCategoryValue' != 'Factorial' )
      & ( 'System_Int32' != 'System_UInt32' )
      & ( 'System_Object' != 'System_IConvertible' )
      & ( ( true_1 != 'PurityAxiomsCanBeAssumed' )
        | ! [X334: $int,X333: $int] :
          ? [X335: $int] :
            ( ( 'Factorial_recursiveFac_System_Int32'(X334,X333) = X335 )
            & ( ( true_1 != 'IsHeap'(X334) )
              | ( ( ( 0 != X333 )
                  | ( 1 = X335 ) )
                & ( ( 0 = X333 )
                  | ( $product(X333,'Factorial_recursiveFac_System_Int32'(X334,$sum(X333,$uminus(1)))) = X335 ) ) ) ) ) )
      & ( inv != 'System_UInt32' )
      & ! [X140: $int,X142: $int,X141: $int] :
          ( ( true_1 != x(typeof(X140),'RefArray'(X141,X142)) )
          | ( nullObject = X140 )
          | ( 'Rank'(X140) = X142 ) )
      & ( 'System_IEquatable_1___System_String' != 'System_IComparable_1___System_String' )
      & ( 'System_Array' != 'System_SByte' )
      & $less(int_9223372036854775807,int_18446744073709551615)
      & ( 'System_Boolean' != 'System_Object' )
      & ( 'System_Int64' != 'System_ICloneable' )
      & ( ownerRef != 'System_IComparable' )
      & ( 'System_UInt64' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ! [X291: $int] :
        ? [X292: $int] :
          ( ( true_1 = x(X291,X292) )
          & ( ( 'System_Object' = X291 )
            | ( X291 != X292 ) )
          & ( 'BaseClass'(X291) = X292 ) )
      & ! [X25: $int,X24: $int] :
          ( ( ( 'AsMutable'(X25) = X25 )
            & ( true_1 != 'IsImmutable'(X25) ) )
          | ( true_1 != x(X25,'AsMutable'(X24)) ) )
      & ( true_1 = 'IsValueType'('System_Char') )
      & ( 'FirstConsistentOwner' != 'System_Int32' )
      & ( 'PeerGroupPlaceholder' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'ArrayCategoryInt' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( ownerRef != 'System_Int16' )
      & ( sharingMode != 'System_Int16' )
      & ( elements != ownerRef )
      & ( 'System_ICloneable' != 'System_IComparable_1___System_String' )
      & ( 'NonNullFieldsAreInitialized' != 'System_SByte' )
      & ( 'System_IntPtr' != 'System_ICloneable' )
      & ( 'System_Char' != 'System_IntPtr' )
      & ( elements != 'ArrayCategoryRef' )
      & ( 'System_Int32' != 'System_IComparable_1___System_String' )
      & ( 'PeerGroupPlaceholder' != 'System_Collections_IEnumerable' )
      & ( ownerRef != 'PeerGroupPlaceholder' )
      & ! [X378: $int,X377: $int,X376: $int] :
        ? [X379: $int] :
          ( ( ( true_1 = x('System_Array',X376) )
            | ( true_1 != x(X379,X376) )
            | ( X376 = X379 ) )
          & ( 'IntArray'(X378,X377) = X379 ) )
      & ( 'System_Boolean' != 'System_SByte' )
      & ( localinv != 'System_Collections_IEnumerable' )
      & ( 'System_Collections_Generic_IEnumerable_1___System_Char' = 'AsInterface'('System_Collections_Generic_IEnumerable_1___System_Char') )
      & ( ownerFrame != 'System_IConvertible' )
      & ( 'System_Char' != 'System_UIntPtr' )
      & ( exposeVersion != 'System_Int16' )
      & ( 'ArrayCategoryRef' != 'System_Collections_IEnumerable' )
      & ( allocated != 'ArrayCategoryNonNullRef' )
      & ( true_1 != 'IsStaticField'(localinv) )
      & ( 'System_Boolean' != 'System_IntPtr' )
      & ( 'System_UInt64' != 'System_IConvertible' )
      & ( inv != 'System_Collections_IEnumerable' )
      & ( ownerFrame != 'System_IComparable' )
      & ( 'System_UInt16' != 'System_Int32' )
      & ( 'ArrayCategoryRef' != 'System_Int16' )
      & ! [X168: $int,X167: $int,X169: $int] :
        ? [X170: $int] :
          ( ( ( true_1 != x(X167,'NonNullRefArray'(X168,X169)) )
            | ( ( X167 != X168 )
              & ( 'NonNullRefArray'(X170,X169) = X167 )
              & ( true_1 = x(X170,X168) ) ) )
          & ( 'ElementType'(X167) = X170 ) )
      & ( elements != 'SharingMode_LockProtected' )
      & ( 'System_IComparable' != 'System_Collections_IEnumerable' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Int16' )
      & ( 'BaseClass'('Factorial') = X0 )
      & ( 'PeerGroupPlaceholder' != 'ArrayCategoryInt' )
      & ( 'System_Int64' != 'System_IConvertible' )
      & ! [X177: $int,X178: $int] :
          ( $less(X177,0)
          | ( x_2(X177,X178) = x_2($sum(X178,X177),X178) )
          | $less(X178,0) )
      & ( ownerRef != 'System_Int64' )
      & ( 'ArrayCategoryRef' != 'System_UInt32' )
      & ( 'System_Object' != 'System_Type' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Int64' )
      & ! [X186: $int,X187: $int] :
          ( ( true_1 != 'IsAllocated'(X187,X186) )
          | ( true_1 != 'IsHeap'(X187) )
          | ( true_1 = 'IsAllocated'(X187,'ElementProxy'(X186,$sum(0,$uminus(1)))) )
          | ( true_1 != x(typeof(X186),'System_Array') ) )
      & ( 'System_Array' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_Boolean' != 'System_Collections_IEnumerable' )
      & ( 'System_Boolean' != 'System_Byte' )
      & ( 'System_UInt32' != stringLiteral0 )
      & ( 'ArrayCategoryRef' != 'System_IEquatable_1___System_String' )
      & ( 'System_Boolean' != 'System_IComparable_1___System_String' )
      & ( true_1 = x('System_Collections_Generic_IEnumerable_1___System_Char','System_Object') )
      & ( 'System_IComparable' != 'Factorial' )
      & ( 'System_IEquatable_1___System_String' = 'AsInterface'('System_IEquatable_1___System_String') )
      & ( sharingMode != 'ArrayCategoryNonNullRef' )
      & ( 'PeerGroupPlaceholder' != 'System_IConvertible' )
      & ( 'System_Byte' != 'System_ICloneable' )
      & ( 'SharingMode_Unshared' != 'System_Int32' )
      & ( inv != 'System_Array' )
      & ! [X216: $int] : ~ $less('Rank'(X216),1)
      & ( sharingMode != 'System_IConvertible' )
      & ( allocated != 'Factorial' )
      & ( 'System_Array' != stringLiteral0 )
      & ( 'System_Int16' != 'System_IComparable_1___System_String' )
      & ( 'SharingMode_Unshared' != 'System_IConvertible' )
      & ( true_1 = 'IsValueType'('System_SByte') )
      & ( true_1 = 'IncludeInMainFrameCondition'(ownerRef) )
      & ( 'ArrayCategoryInt' != 'System_ICloneable' )
      & ( elements != localinv )
      & ( true_1 = 'IncludeInMainFrameCondition'(ownerFrame) )
      & ( 'System_UInt32' != 'System_IComparable_1___System_String' )
      & ( 'System_UIntPtr' != 'System_IComparable' )
      & ( 'SharingMode_LockProtected' != 'System_Boolean' )
      & ( exposeVersion != 'System_UInt16' )
      & ( 'System_String' != 'System_IComparable' )
      & ( 'SharingMode_LockProtected' != 'System_ICloneable' )
      & ( 'ArrayCategoryInt' != 'System_IntPtr' )
      & ( ownerRef != ownerFrame )
      & ( 'SharingMode_LockProtected' != 'System_IntPtr' )
      & ( 'System_Type' != 'System_String' )
      & ( elements != stringLiteral0 )
      & ( 'System_Object' != 'System_UInt64' )
      & ( inv != 'System_Boolean' )
      & ( 'NonNullFieldsAreInitialized' != 'System_UInt16' )
      & ( elements != 'PeerGroupPlaceholder' )
      & ( 'System_Array' != 'System_Boolean' )
      & ( 'System_UInt64' != 'System_IntPtr' )
      & ( true_1 = 'IsNotNull'(stringLiteral0,'System_String') )
      & ( 'System_Int16' != 'System_Int64' )
      & ( exposeVersion != 'System_UInt64' )
      & ( 'System_SByte' != 'System_IComparable_1___System_String' )
      & ! [X17: $int,X16: $int] :
        ? [X18: $int] :
          ( ( true_1 = x(X18,'System_Array') )
          & ( 'IntArray'(X16,X17) = X18 )
          & ( true_1 = x(X18,X18) ) )
      & ( true_1 = 'IsValueType'('System_UInt16') )
      & ( 'ArrayCategoryRef' != 'NonNullFieldsAreInitialized' )
      & ( inv != 'SharingMode_Unshared' )
      & ( elements != 'ArrayCategoryNonNullRef' )
      & ( localinv != 'PeerGroupPlaceholder' )
      & ( 'ArrayCategoryValue' != 'System_UInt64' )
      & ( true_1 = x('System_IComparable','System_IComparable') )
      & ( 'System_Boolean' != 'System_UInt32' )
      & ( inv != 'System_Int16' )
      & ( 'System_Object' != 'System_Byte' )
      & ( 'System_Type' != 'System_UInt16' )
      & ! [X176: $int] :
          ( ( ( true_1 = 'InRange'(X176,'System_Byte') )
            | ~ $less(X176,256)
            | $less(X176,0) )
          & ( ( $less(X176,256)
              & ~ $less(X176,0) )
            | ( true_1 != 'InRange'(X176,'System_Byte') ) ) )
      & ( 'ArrayCategoryInt' != 'System_IComparable' )
      & ( true_1 = 'IsMemberlessType'('System_IComparable') )
      & ( 'System_Array' != 'System_IConvertible' )
      & ( 'System_UIntPtr' != 'System_IComparable_1___System_String' )
      & ! [X148: $int,X146: $int,X147: $int,X149: $int] : ( 'ArrayIndexInvX'('ArrayIndex'(X146,X149,X148,X147)) = X148 )
      & ( $sum(int_m9223372036854775808,1) = $sum(0,$uminus(int_9223372036854775807)) )
      & ( allocated != ownerFrame )
      & ! [X127: $int,X128: $int] :
        ? [X129: $int] :
          ( ( x_2(X127,X128) = X129 )
          & ( $less(X127,0)
            | ( ~ $less(X129,0)
              & $less(X129,X128) )
            | ~ $less(0,X128) ) )
      & ( true_1 = x('System_Collections_Generic_IEnumerable_1___System_Char','System_Collections_Generic_IEnumerable_1___System_Char') )
      & ( sharingMode != 'System_UInt64' )
      & ( elements != 'Factorial' )
      & ! [X367: $int,X368: $int,X369: $int] :
        ? [X370: $int] :
          ( ( 'RefArrayGet'(select2(X367,X368,elements),X369) = X370 )
          & ( ( true_1 = x(typeof(X370),'ElementType'(typeof(X368))) )
            | ( nullObject = X370 )
            | ( true_1 != 'IsHeap'(X367) ) ) )
      & ( 'SharingMode_Unshared' != 'System_Byte' )
      & ! [X330: $int,X331: $int] :
        ? [X332: $int] :
          ( ( true_1 = x(X332,X332) )
          & ( true_1 = x(X332,'System_Array') )
          & ( 'RefArray'(X330,X331) = X332 ) )
      & ( 'SharingMode_LockProtected' != 'System_UInt32' )
      & ( localinv != 'System_IConvertible' )
      & ! [X374: $int,X373: $int,X375: $int] :
          ( ( true_1 != 'IsAllocated'(X374,X375) )
          | ( true_1 = 'IsAllocated'(X374,'RefArrayGet'(X375,X373)) ) )
      & ( inv != 'System_SByte' )
      & ( ownerRef != 'System_Array' )
      & ( 'ArrayCategoryNonNullRef' != 'NonNullFieldsAreInitialized' )
      & ( true_1 != 'IncludedInModifiesStar'(ownerRef) )
      & ( allocated != 'System_IComparable' )
      & ( 'System_Type' != 'System_UIntPtr' )
      & ! [X152: $int,X153: $int] :
        ? [X154: $int] :
          ( ( ~ $less(X152,0)
            | $less(X153,0)
            | ( $less(X154,$sum(0,$uminus(X152)))
              & ~ $less(X154,0) ) )
          & ( x_2(X153,X152) = X154 ) )
      & ( localinv != 'System_UInt32' )
      & $less(int_m9223372036854775808,int_m2147483648)
      & ( 'System_ICloneable' != 'System_IEquatable_1___System_String' )
      & ( 'System_UInt16' != stringLiteral0 )
      & ( allocated != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( ownerFrame != 'System_Char' )
      & ( localinv != 'System_UInt64' )
      & ( 'SharingMode_Unshared' != 'System_ICloneable' )
      & ( inv != 'System_IComparable' )
      & ( 'ArrayCategoryValue' != 'System_ICloneable' )
      & ( elements != 'System_Array' )
      & ( 'System_IComparable' = 'AsInterface'('System_IComparable') )
      & ( 'System_Int16' != stringLiteral0 )
      & ( 'System_Object' != 'NonNullFieldsAreInitialized' )
      & ( inv != 'System_IComparable_1___System_String' )
      & ! [X347: $int] : ~ $less('StringLength'(X347),0)
      & ! [X20: $int,X21: $int,X19: $int] :
          ( ( true_1 != 'IsHeap'(X20) )
          | ( true_1 = 'IsAllocated'(X20,select2(X20,X19,X21)) )
          | ( true_1 != select2(X20,X19,allocated) ) )
      & ( sharingMode != 'System_ICloneable' )
      & ! [X310: $int,X311: $int,X312: $int] :
        ? [X313: $int,X314: $int] :
          ( ( ( true_1 != x(select2(X310,X314,inv),X313) )
            | ( 'BaseClass'(X313) = select2(X310,X314,localinv) )
            | ( true_1 != select2(X310,X312,allocated) )
            | ( true_1 != 'IsHeap'(X310) )
            | ( 'PeerGroupPlaceholder' = X313 )
            | ( 'AsPureObject'(X312) != X312 )
            | ( nullObject = X312 )
            | ( select2(X310,X312,X311) = 'FieldDependsOnFCO'(X312,X311,select2(X310,select2(X310,X312,'FirstConsistentOwner'),exposeVersion)) ) )
          & ( select2(X310,X312,ownerFrame) = X313 )
          & ( select2(X310,X312,ownerRef) = X314 ) )
      & ( ownerFrame != 'System_Array' )
      & ( ownerRef != 'System_String' )
      & ( 'FirstConsistentOwner' != 'System_IConvertible' )
      & ! [X297: $int,X296: $int] :
          ( ( true_1 = select2(X297,X296,allocated) )
          | ( true_1 != 'IsAllocated'(X297,X296) ) )
      & ( 'System_IComparable_1___System_String' != 'System_IComparable' )
      & ( 'ArrayCategoryNonNullRef' != 'System_IConvertible' )
      & ( 'System_Int32' != 'System_IntPtr' )
      & ( sharingMode != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'ArrayCategoryNonNullRef' != 'System_UInt32' )
      & ( 'NonNullFieldsAreInitialized' != stringLiteral0 )
      & ( 'ArrayCategoryInt' != 'System_Byte' )
      & ( 'SharingMode_Unshared' != ownerFrame )
      & ( localinv != 'System_Type' )
      & ( 'SharingMode_Unshared' != 'System_Char' )
      & ( 'SharingMode_Unshared' != ownerRef )
      & ( ownerRef != 'ArrayCategoryValue' )
      & ( 'SharingMode_Unshared' != 'System_UInt32' )
      & ( 'System_Boolean' != 'System_UIntPtr' )
      & ( ownerRef != 'Factorial' )
      & ( true_1 = x('System_Array','System_Object') )
      & ( inv != 'System_Int32' )
      & ( 'ArrayCategoryRef' != 'System_Char' )
      & ( 'SharingMode_LockProtected' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_String' != stringLiteral0 )
      & ( 'System_String' != 'System_Int32' )
      & ( 'System_Boolean' != 'System_Int16' )
      & ( 'System_Int16' != 'System_UInt16' )
      & ( 'ArrayCategoryRef' != 'System_UInt16' )
      & ( 'System_String' != 'System_UInt16' )
      & ( 'System_Boolean' != 'System_ICloneable' )
      & ! [X109: $int,X108: $int,X111: $int,X110: $int] :
          ( ( true_1 != 'IsHeap'(X111) )
          | ( nullObject != select2(X111,X109,'AsNonNullRefField'(X108,X110)) )
          | ( nullObject = X109 )
          | ( ( true_1 != select2(X111,'BeingConstructed','NonNullFieldsAreInitialized') )
            & ( 'BeingConstructed' = X109 ) ) )
      & ( 'System_UInt16' != 'System_IComparable' )
      & ( 'PeerGroupPlaceholder' != 'System_Type' )
      & ( 'PeerGroupPlaceholder' != 'ArrayCategoryNonNullRef' )
      & ! [X301: $int,X302: $int] :
          ( ( 'PeerGroupPlaceholder' = select2(X302,'ClassRepr'(X301),ownerFrame) )
          | ( true_1 != 'IsHeap'(X302) ) )
      & ( exposeVersion != 'System_IComparable' )
      & ( 'System_UInt64' != 'System_ICloneable' )
      & ( ownerRef != 'System_Object' )
      & ( 'System_Object' != 'System_Char' )
      & ( inv != 'FirstConsistentOwner' )
      & ( 'System_UIntPtr' != stringLiteral0 )
      & ( 'System_Int16' != 'System_Collections_IEnumerable' )
      & ! [X285: $int,X284: $int,X283: $int] :
          ( ( ( true_1 = 'System_String_Equals_System_String_System_String'(X283,X284,X285) )
            | ( true_1 != 'StringEquals'(X284,X285) ) )
          & ( ( true_1 = 'StringEquals'(X284,X285) )
            | ( true_1 != 'System_String_Equals_System_String_System_String'(X283,X284,X285) ) )
          & ( ( X284 != X285 )
            | ( true_1 = 'StringEquals'(X284,X285) ) )
          & ( ( true_1 = 'System_String_Equals_System_String_System_String'(X283,X284,X285) )
            | ( true_1 != 'StringEquals'(X285,X284) ) )
          & ( ( true_1 = 'StringEquals'(X285,X284) )
            | ( true_1 != 'System_String_Equals_System_String_System_String'(X283,X284,X285) ) ) )
      & ( 'ArrayCategoryNonNullRef' != 'System_IntPtr' )
      & ( 'SharingMode_LockProtected' != 'ArrayCategoryRef' )
      & ( 'System_Array' != 'System_Int32' )
      & ( 'SharingMode_LockProtected' != 'System_Int32' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Object' )
      & ( inv != 'System_UInt64' )
      & ( 'System_Int16' != 'System_ICloneable' )
      & ( 'FirstConsistentOwner' != 'System_Int64' )
      & ( ownerRef != 'System_IntPtr' )
      & ( inv != 'System_UInt16' )
      & ( 'System_IEquatable_1___System_String' != stringLiteral0 )
      & ( 'System_Boolean' != 'System_UInt16' )
      & ( 'ArrayCategoryInt' != 'NonNullFieldsAreInitialized' )
      & ( elements != 'System_Boolean' )
      & ( elements != 'System_SByte' )
      & ! [X82: $int,X84: $int,X83: $int] :
          ( ( 'ArrayCategoryNonNullRef' = 'ArrayCategory'(X82) )
          | ( true_1 != x(X82,'NonNullRefArray'(X83,X84)) ) )
      & ! [X270: $int,X271: $int] :
          ( ( nullObject = X270 )
          | ( true_1 != x(typeof(X270),'AsImmutable'(X271)) )
          | ( 'BeingConstructed' = X270 )
          | ! [X272: $int] :
            ? [X273: $int] :
              ( ( ( ! [X274: $int] :
                      ( ( X270 = X274 )
                      | ( 'AsOwner'(X270,select2(X272,X274,ownerRef)) != X270 )
                      | ( 'PeerGroupPlaceholder' != select2(X272,X274,ownerFrame) ) )
                  & ( 'PeerGroupPlaceholder' = select2(X272,X270,ownerFrame) )
                  & ( select2(X272,X270,inv) = X273 )
                  & ( 'AsOwner'(X270,select2(X272,X270,ownerRef)) = X270 )
                  & ( select2(X272,X270,localinv) = X273 ) )
                | ( true_1 != 'IsHeap'(X272) ) )
              & ( typeof(X270) = X273 ) ) )
      & ( allocated != exposeVersion )
      & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_IComparable_1___System_String' )
      & ( 'PeerGroupPlaceholder' != 'System_Boolean' )
      & ( 'SharingMode_Unshared' != 'System_Boolean' )
      & ( 'System_UInt32' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_IEquatable_1___System_String' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'SharingMode_LockProtected' != 'System_Array' )
      & ( ownerFrame != 'System_Byte' )
      & ( 'ArrayCategoryRef' != 'System_Object' )
      & ( true_1 = x('Factorial','Factorial') )
      & ( 'System_Byte' != 'System_Int16' )
      & ( 'ArrayCategoryRef' != 'System_Type' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Int32' )
      & ( 'ArrayCategoryValue' != 'System_Int64' )
      & ( true_1 = x('System_IComparable_1___System_String','System_Object') )
      & ! [X90: $int,X91: $int] : ( 'Factorial_recursiveFac_System_Int32'(X90,X91) = 'Factorial_recursiveFac_System_Int32_1'(X91) )
      & ( 'System_Byte' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( ownerFrame != 'System_Boolean' )
      & ( 'SharingMode_Unshared' != 'System_IComparable' )
      & ( 'System_Int32' != 'System_UIntPtr' )
      & ( ownerFrame != 'System_Int64' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Collections_IEnumerable' )
      & ( 'System_UIntPtr' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ! [X145: $int] :
          ( ( ( true_1 = 'InRange'(X145,'System_Int64') )
            | $less(int_9223372036854775807,X145)
            | $less(X145,int_m9223372036854775808) )
          & ( ( ~ $less(int_9223372036854775807,X145)
              & ~ $less(X145,int_m9223372036854775808) )
            | ( true_1 != 'InRange'(X145,'System_Int64') ) ) )
      & ( 'System_UIntPtr' != 'Factorial' )
      & ( 'System_Int64' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_UInt16' != 'Factorial' )
      & ( 'System_UInt32' != 'System_ICloneable' )
      & ( 'System_String' != 'System_UInt32' )
      & ( 'System_Array' != 'System_ICloneable' )
      & ( 'System_Array' != 'System_Object' )
      & ! [X365: $int,X366: $int] : ( 'ElementType'('IntArray'(X366,X365)) = X366 )
      & ( localinv != 'SharingMode_LockProtected' )
      & ! [X242: $int,X243: $int,X241: $int,X240: $int] :
          ( ( true_1 != 'IsHeap'(X240) )
          | ( true_1 = 'Is'(select2(X240,X241,'AsRefField'(X243,X242)),X242) ) )
      & ( localinv != 'FirstConsistentOwner' )
      & ( true_1 = 'IncludedInModifiesStar'(exposeVersion) )
      & ( 'System_Array' != 'System_String' )
      & ( 'System_Byte' != 'System_IConvertible' )
      & ( ownerFrame != stringLiteral0 )
      & ( 'System_Boolean' != 'Factorial' )
      & ( elements != 'System_IConvertible' )
      & ( true_1 = 'IsValueType'('System_UInt32') )
      & ( 'ArrayCategoryRef' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_Object' != 'System_ICloneable' )
      & ( 'NonNullFieldsAreInitialized' != 'System_String' )
      & ( 'ArrayCategoryValue' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( inv != 'System_Type' )
      & ( localinv != 'System_IEquatable_1___System_String' )
      & ( inv != 'System_IConvertible' )
      & ! [X162: $int] : ( true_1 = 'IsNotNull'('TypeObject'(X162),'System_Type') )
      & ( 'ArrayCategoryValue' != 'System_Array' )
      & ( 'System_Array' != 'System_IntPtr' )
      & ( 'ArrayCategoryRef' != 'System_Boolean' )
      & ( 'SharingMode_Unshared' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( true_1 = x('System_String','System_ICloneable') )
      & ( 'System_UInt16' != 'System_Collections_IEnumerable' )
      & ( 'ArrayCategoryValue' != 'System_UInt16' )
      & ( 'System_IEquatable_1___System_String' != 'Factorial' )
      & ( 'System_UInt16' != 'System_UInt64' )
      & ! [X171: $int,X172: $int] : ~ $less('DimLength'(X171,X172),0)
      & ( sharingMode != stringLiteral0 )
      & ( 'System_IntPtr' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Collections_IEnumerable' )
      & ( 'System_Byte' != 'System_Collections_IEnumerable' )
      & ( 'System_UIntPtr' != 'System_IConvertible' )
      & ( 'PeerGroupPlaceholder' != 'System_UInt64' )
      & ( 'System_Object' != 'Factorial' )
      & ( sharingMode != 'FirstConsistentOwner' )
      & ! [X95: $int] :
          ( ( true_1 != 'IsValueType'(X95) )
          | ( ! [X96: $int] :
                ( ( true_1 != x(X95,X96) )
                | ( X95 = X96 ) )
            & ! [X97: $int] :
                ( ( X95 = X97 )
                | ( true_1 != x(X97,X95) ) ) ) )
      & ( ownerRef != 'System_Char' )
      & ( 'System_Boolean' != 'System_String' )
      & ( 'ArrayCategoryNonNullRef' != 'Factorial' )
      & ( 'System_ICloneable' != 'Factorial' )
      & ! [X46: $int] :
          ( ( ( true_1 = 'InRange'(X46,'System_UInt64') )
            | $less(int_18446744073709551615,X46)
            | $less(X46,0) )
          & ( ( ~ $less(int_18446744073709551615,X46)
              & ~ $less(X46,0) )
            | ( true_1 != 'InRange'(X46,'System_UInt64') ) ) ) ),
    inference(flattening,[],[f40]) ).

tff(f42,plain,
    ? [X0: $int,X1: $int] :
      ( ( 'ArrayCategoryInt' != 'System_Boolean' )
      & ( 'System_String' != 'System_Int64' )
      & ( true_1 = 'IsMemberlessType'('System_Collections_IEnumerable') )
      & ( true_1 = 'IsImmutable'('System_String') )
      & ( elements != sharingMode )
      & ! [X2: $int,X3: $int,X4: $int] :
          ( ( true_1 != 'IsHeap'(X4) )
          | ( true_1 = 'InRange'('IntArrayGet'(select2(X4,X2,elements),X3),'ElementType'(typeof(X2))) ) )
      & ( inv != sharingMode )
      & ( 'System_Object' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_String' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( exposeVersion != 'FirstConsistentOwner' )
      & ( 'System_Type' != 'System_Char' )
      & ( allocated != 'System_Array' )
      & ! [X5: $int,X6: $int,X7: $int] : ( 'IntArrayGet'('IntArraySet'(X6,X5,X7),X5) = X7 )
      & ( 'PeerGroupPlaceholder' != 'System_IComparable_1___System_String' )
      & ( 'ArrayCategoryValue' != 'System_Int32' )
      & ( 'ArrayCategoryValue' != 'System_Object' )
      & ( localinv != 'System_Byte' )
      & ( 'System_SByte' != 'System_ICloneable' )
      & ( 'SharingMode_Unshared' != stringLiteral0 )
      & ( true_1 != 'IsStaticField'(exposeVersion) )
      & ! [X8: $int,X9: $int,X10: $int] :
          ( ( true_1 = x('NonNullRefArray'(X8,X9),'NonNullRefArray'(X10,X9)) )
          | ( true_1 != x(X8,X10) ) )
      & ( 'System_Int32' != 'System_Char' )
      & ! [X11: $int,X12: $int,X13: $int] : ( 'RefArrayGet'('RefArraySet'(X11,X12,X13),X12) = X13 )
      & ( sharingMode != ownerFrame )
      & ( 'NonNullFieldsAreInitialized' != 'System_ICloneable' )
      & ( localinv != 'Factorial' )
      & ( ownerFrame != 'FirstConsistentOwner' )
      & ( 'System_SByte' != 'System_Int32' )
      & ( inv != 'ArrayCategoryInt' )
      & ( 'System_Type' != 'System_IEquatable_1___System_String' )
      & ! [X14: $int,X15: $int,X16: $int,X17: $int] :
        ? [X18: $int] :
          ( ( select2(X16,X17,'AsElementsPeerField'(X14,X15)) = X18 )
          & ? [X19: $int] :
              ( ( 'ElementProxy'(X18,X15) = X19 )
              & ( ( nullObject = X18 )
                | ( true_1 != 'IsHeap'(X16) )
                | ( ( select2(X16,X19,ownerRef) = select2(X16,X17,ownerRef) )
                  & ( select2(X16,X17,ownerFrame) = select2(X16,X19,ownerFrame) ) ) ) ) )
      & ! [X20: $int,X21: $int] :
        ? [X22: $int] :
          ( ( ( ~ $less(X22,0)
              & ~ $less($sum(X20,X21),X22) )
            | $less(X20,0)
            | $less(X21,0) )
          & ( or_1(X20,X21) = X22 ) )
      & ( 'FirstConsistentOwner' != 'System_UInt16' )
      & ( 'System_UInt64' != 'System_Collections_IEnumerable' )
      & ( sharingMode != 'System_Type' )
      & ( 'FirstConsistentOwner' != 'System_Int16' )
      & ( sharingMode != 'System_IComparable_1___System_String' )
      & ( 'SharingMode_LockProtected' != 'ArrayCategoryInt' )
      & ( 'SharingMode_Unshared' != 'System_SByte' )
      & ( true_1 = 'IsValueType'('System_UIntPtr') )
      & ( allocated != localinv )
      & ! [X23: $int,X24: $int] :
          ( ( ( ( true_1 = 'Is'(X24,X23) )
              & ( nullObject != X24 ) )
            | ( true_1 != 'IsNotNull'(X24,X23) ) )
          & ( ( true_1 = 'IsNotNull'(X24,X23) )
            | ( true_1 != 'Is'(X24,X23) )
            | ( nullObject = X24 ) ) )
      & ( 'SharingMode_Unshared' != 'System_Collections_IEnumerable' )
      & ( 'ArrayCategoryValue' != 'ArrayCategoryInt' )
      & ( 'System_ICloneable' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_Type' != 'System_UInt64' )
      & ( sharingMode != 'System_UIntPtr' )
      & ( 'ArrayCategoryInt' != 'ArrayCategoryRef' )
      & ( 'System_String' = 'AsDirectSubClass'('System_String',X0) )
      & ( 'ArrayCategoryValue' != 'NonNullFieldsAreInitialized' )
      & ( true_1 = x('System_IEquatable_1___System_String','System_IEquatable_1___System_String') )
      & ( 'System_Type' != 'System_UInt32' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( true_1 = x('System_Collections_Generic_IEnumerable_1___System_Char','System_Collections_IEnumerable') )
      & ! [X25: $int] :
          ( ( true_1 != x(X25,'System_String') )
          | ( 'System_String' = X25 ) )
      & ( ownerFrame != 'System_IComparable_1___System_String' )
      & ( 'System_Object' != 'System_Int32' )
      & ( 'System_Object' != 'FirstConsistentOwner' )
      & ( 'PeerGroupPlaceholder' != 'System_Object' )
      & ( exposeVersion != stringLiteral0 )
      & ( 'System_UInt64' != 'System_IComparable_1___System_String' )
      & ( allocated != 'System_Object' )
      & ( 'System_Type' != 'FirstConsistentOwner' )
      & ( exposeVersion != 'SharingMode_LockProtected' )
      & ! [X26: $int,X27: $int,X28: $int,X29: $int] :
          ( ( true_1 != 'IsHeap'(X27) )
          | ( true_1 = 'InRange'(select2(X27,X29,'AsRangeField'(X28,X26)),X26) ) )
      & ( 'System_Type' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'ArrayCategoryValue' != 'System_Int16' )
      & ( allocated != 'FirstConsistentOwner' )
      & ! [X30: $int] :
          ( ( ( $less(X30,65536)
              & ~ $less(X30,0) )
            | ( true_1 != 'InRange'(X30,'System_Char') ) )
          & ( ( true_1 = 'InRange'(X30,'System_Char') )
            | ~ $less(X30,65536)
            | $less(X30,0) ) )
      & ( 'System_Byte' != 'System_IntPtr' )
      & ! [X31: $int] :
          ( ( ( ~ $less(int_2147483647,X31)
              & ~ $less(X31,int_m2147483648) )
            | ( true_1 != 'InRange'(X31,'System_Int32') ) )
          & ( ( true_1 = 'InRange'(X31,'System_Int32') )
            | $less(int_2147483647,X31)
            | $less(X31,int_m2147483648) ) )
      & ( 'System_UIntPtr' != 'System_IEquatable_1___System_String' )
      & ! [X32: $int,X33: $int] :
        ? [X34: $int] :
          ( ( x_2(X33,X32) = X34 )
          & ( $less(0,X33)
            | ~ $less(0,X32)
            | ( ~ $less(0,X34)
              & $less($sum(0,$uminus(X32)),X34) ) ) )
      & ( 'System_IEquatable_1___System_String' != 'System_Collections_IEnumerable' )
      & ( 'System_UInt16' != 'System_IConvertible' )
      & ! [X35: $int,X36: $int] : ( $sum('DimLength'(X35,X36),$uminus(1)) = 'UBound'(X35,X36) )
      & ( 'System_Int64' != stringLiteral0 )
      & ( 'NonNullFieldsAreInitialized' != 'Factorial' )
      & ( 'ArrayCategoryNonNullRef' != 'System_ICloneable' )
      & ( 'ArrayCategoryRef' != 'System_SByte' )
      & ( exposeVersion != 'SharingMode_Unshared' )
      & ( 'ArrayCategoryInt' != 'System_IEquatable_1___System_String' )
      & ( 'System_Int32' != 'System_ICloneable' )
      & ( ownerRef != 'NonNullFieldsAreInitialized' )
      & ( exposeVersion != 'System_Int32' )
      & ( 'ArrayCategoryRef' != 'System_IConvertible' )
      & ( 'BaseClass'('System_String') = X0 )
      & ! [X37: $int,X38: $int] :
          ( ( ( nullObject != 'BoxTester'(X37,X38) )
            | ( 'UnboxedType'(X37) != X38 ) )
          & ( ( 'UnboxedType'(X37) = X38 )
            | ( nullObject = 'BoxTester'(X37,X38) ) ) )
      & ( 'PeerGroupPlaceholder' != 'System_Array' )
      & $less(int_m2147483648,$sum(0,$uminus(100000)))
      & ( 'System_IntPtr' != stringLiteral0 )
      & ! [X39: $int,X40: $int,X41: $int] :
          ( ( 'IfThenElse'(X41,X39,X40) = X39 )
          | ( true_1 != X41 ) )
      & ( ownerRef != 'System_ICloneable' )
      & ( 'ArrayCategoryInt' != 'System_Collections_IEnumerable' )
      & ( 'System_Type' != stringLiteral0 )
      & ( 'System_Byte' != 'System_IEquatable_1___System_String' )
      & ( 'ArrayCategoryValue' != 'ArrayCategoryNonNullRef' )
      & ( true_1 != 'IsImmutable'('System_Object') )
      & ( 'System_SByte' != stringLiteral0 )
      & ( ownerFrame != 'ArrayCategoryNonNullRef' )
      & ( elements != 'System_IEquatable_1___System_String' )
      & ( localinv != ownerRef )
      & ( localinv != exposeVersion )
      & ( 'ArrayCategoryRef' != 'System_Int64' )
      & ( 'System_Collections_IEnumerable' = 'AsInterface'('System_Collections_IEnumerable') )
      & ! [X42: $int,X43: $int,X44: $int] :
        ? [X45: $int] :
          ( ( 'ElementType'(X44) = X45 )
          & ( ( true_1 = x('System_Array',X44) )
            | ( true_1 != x('NonNullRefArray'(X43,X42),X44) )
            | ( ( 'NonNullRefArray'(X45,X42) = X44 )
              & ( true_1 = x(X43,X45) ) ) ) )
      & ( true_1 = 'IsMemberlessType'('System_IConvertible') )
      & ( 'SharingMode_LockProtected' != 'System_Char' )
      & ( 'SharingMode_LockProtected' != 'System_IComparable' )
      & ( true_1 = x('System_Collections_IEnumerable','System_Object') )
      & ( 'PeerGroupPlaceholder' != 'System_Char' )
      & ! [X46: $int] : ( shr(X46,0) = X46 )
      & ( localinv != 'ArrayCategoryNonNullRef' )
      & ( localinv != 'System_Array' )
      & ( 'System_ICloneable' = 'AsInterface'('System_ICloneable') )
      & ( 'ArrayCategoryRef' != 'ArrayCategoryNonNullRef' )
      & ( 'System_Byte' != stringLiteral0 )
      & ( true_1 = x('System_IComparable_1___System_String','System_IComparable_1___System_String') )
      & ( 'System_Int64' != 'System_UIntPtr' )
      & ( allocated != 'System_UInt16' )
      & ! [X47: $int,X48: $int,X49: $int] :
          ( ( true_1 != 'IsAllocated'(X48,X49) )
          | ( true_1 = 'IsAllocated'(X48,'StructGet'(X49,X47)) ) )
      & ( 'SharingMode_LockProtected' != 'System_IComparable_1___System_String' )
      & ( 'ArrayCategoryValue' != 'System_Type' )
      & ( elements != 'System_UInt16' )
      & ( 'PeerGroupPlaceholder' != 'System_SByte' )
      & ( ownerRef != 'ArrayCategoryInt' )
      & ( allocated != 'SharingMode_Unshared' )
      & ( 'System_Int16' != 'System_IntPtr' )
      & ( 'PeerGroupPlaceholder' != 'NonNullFieldsAreInitialized' )
      & ( 'PeerGroupPlaceholder' != 'ArrayCategoryRef' )
      & ( ownerFrame != 'NonNullFieldsAreInitialized' )
      & ( ownerRef != stringLiteral0 )
      & ( exposeVersion != 'System_SByte' )
      & ( inv != exposeVersion )
      & ( 'System_IntPtr' != 'System_IConvertible' )
      & ( 'ArrayCategoryInt' != 'System_Char' )
      & ( 'ArrayCategoryNonNullRef' != 'System_UIntPtr' )
      & ( inv != stringLiteral0 )
      & ( allocated != sharingMode )
      & ( ownerFrame != 'ArrayCategoryRef' )
      & ( true_1 = 'IncludedInModifiesStar'(elements) )
      & ! [X50: $int,X51: $int,X52: $int] :
          ( ( ( true_1 = 'System_String_Equals_System_String_System_String'(X50,X52,X51) )
            | ( true_1 != 'System_String_Equals_System_String'(X50,X52,X51) ) )
          & ( ( true_1 = 'System_String_Equals_System_String'(X50,X52,X51) )
            | ( true_1 != 'System_String_Equals_System_String_System_String'(X50,X52,X51) ) ) )
      & ( 'ArrayCategoryNonNullRef' != 'System_IEquatable_1___System_String' )
      & ( 'PeerGroupPlaceholder' != 'System_Int64' )
      & ( elements != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_Array' != 'System_UInt64' )
      & ( 'System_Type' != 'System_Int64' )
      & ( exposeVersion != 'System_UIntPtr' )
      & ( ownerRef != 'System_UInt64' )
      & ( 'System_Type' != 'System_ICloneable' )
      & ( 'System_Byte' != 'System_Char' )
      & ( 'SharingMode_Unshared' != 'System_Object' )
      & ( inv != 'PeerGroupPlaceholder' )
      & ( sharingMode != 'System_Collections_IEnumerable' )
      & ( ownerRef != 'ArrayCategoryRef' )
      & ( 'NonNullFieldsAreInitialized' != 'System_IntPtr' )
      & ( 'System_UInt16' != 'System_UIntPtr' )
      & ! [X53: $int,X54: $int,X55: $int] :
        ? [X56: $int] :
          ( ( 'ElementType'(X55) = X56 )
          & ( ( true_1 = x('System_Array',X55) )
            | ( ( 'RefArray'(X56,X53) = X55 )
              & ( true_1 = x(X54,X56) ) )
            | ( true_1 != x('RefArray'(X54,X53),X55) ) ) )
      & ( exposeVersion != 'System_Array' )
      & ( ownerRef != 'System_IComparable_1___System_String' )
      & ( elements != 'NonNullFieldsAreInitialized' )
      & ( 'System_UInt32' != 'System_UInt64' )
      & ( ownerFrame != 'System_Type' )
      & ( exposeVersion != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & $less(int_2147483647,int_4294967295)
      & ( inv != 'System_Object' )
      & ( allocated != 'System_Int32' )
      & ( 'System_Byte' != 'System_UIntPtr' )
      & ( allocated != 'System_IEquatable_1___System_String' )
      & ( 'System_String' != 'System_Byte' )
      & ( 'System_Type' != 'NonNullFieldsAreInitialized' )
      & ( 'SharingMode_Unshared' != 'System_Array' )
      & ( 'ArrayCategoryRef' != 'System_UInt64' )
      & ( 'System_Char' != stringLiteral0 )
      & ( 'SharingMode_LockProtected' != 'System_Byte' )
      & ( 'System_IntPtr' != 'Factorial' )
      & ! [X57: $int] :
          ( ( 'DimLength'(X57,0) = 'Length'(X57) )
          | ( 1 != 'Rank'(X57) ) )
      & ! [X58: $int,X59: $int] :
          ( ( true_1 != 'Is'(X58,X59) )
          | ( 'As'(X58,X59) = X58 ) )
      & ( 'FirstConsistentOwner' != 'System_Char' )
      & ( 'ArrayCategoryNonNullRef' != stringLiteral0 )
      & ( 'System_Array' != 'System_Collections_IEnumerable' )
      & ! [X60: $int,X61: $int,X62: $int] :
        ? [X63: $int,X64: $int] :
          ( ( ( true_1 != x(typeof(X60),'System_Array') )
            | ( nullObject = X64 )
            | ( ( select2(X61,X64,ownerRef) = select2(X61,X63,ownerRef) )
              & ( select2(X61,X64,ownerFrame) = select2(X61,X63,ownerFrame) ) )
            | ( true_1 != 'IsHeap'(X61) )
            | ( true_1 = 'IsImmutable'(typeof(X64)) ) )
          & ( 'ElementProxy'(X60,$sum(0,$uminus(1))) = X63 )
          & ( 'RefArrayGet'(select2(X61,X60,elements),X62) = X64 ) )
      & ( 'PeerGroupPlaceholder' != 'System_IEquatable_1___System_String' )
      & ( elements != 'System_IComparable' )
      & ( 'System_Char' != 'System_IEquatable_1___System_String' )
      & ( exposeVersion != 'ArrayCategoryInt' )
      & ( 'System_Byte' != 'Factorial' )
      & ( 'System_SByte' != 'System_UInt16' )
      & ( allocated != 'ArrayCategoryRef' )
      & ( 'System_Int32' != 'System_IEquatable_1___System_String' )
      & ( allocated != 'NonNullFieldsAreInitialized' )
      & ( 'FirstConsistentOwner' != stringLiteral0 )
      & ( true_1 != 'IsStaticField'(inv) )
      & ( exposeVersion != 'ArrayCategoryValue' )
      & ( exposeVersion != 'System_Object' )
      & ( 'System_Int32' != stringLiteral0 )
      & ( 'ArrayCategoryValue' != 'System_IConvertible' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Boolean' )
      & ( ownerFrame != 'System_IEquatable_1___System_String' )
      & ( 'ArrayCategoryRef' != 'System_IntPtr' )
      & ( allocated != 'System_Collections_IEnumerable' )
      & ( 'System_SByte' != 'System_IConvertible' )
      & ( 'System_SByte' != 'System_IComparable' )
      & ( sharingMode != 'System_Int64' )
      & ( 'System_SByte' != 'System_Collections_IEnumerable' )
      & ( 'ArrayCategoryValue' != 'System_IComparable' )
      & ( 'System_Object' = X1 )
      & ( true_1 = x('System_String','System_IComparable_1___System_String') )
      & ! [X65: $int,X66: $int] :
        ? [X67: $int,X68: $int,X69: $int] :
          ( ( typeof(X65) = X69 )
          & ( select2(X66,X65,ownerRef) = X68 )
          & ( select2(X66,X65,ownerFrame) = X67 )
          & ( ( true_1 != 'IsHeap'(X66) )
            | ( ( select2(X66,X65,localinv) = X69 )
              & ( select2(X66,X65,inv) = X69 ) )
            | ( true_1 != x(select2(X66,X68,inv),X67) )
            | ( 'PeerGroupPlaceholder' = X67 )
            | ( 'BaseClass'(X67) = select2(X66,X68,localinv) ) ) )
      & ( elements != 'System_UInt64' )
      & ! [X70: $int,X71: $int,X72: $int] : ( 'ValueArrayGet'('ValueArraySet'(X72,X70,X71),X70) = X71 )
      & ( 'System_UInt64' != 'Factorial' )
      & ( 'System_Boolean' != 'FirstConsistentOwner' )
      & ( sharingMode != 'System_Char' )
      & ( 'PeerGroupPlaceholder' != 'System_Int32' )
      & ( 'SharingMode_Unshared' != 'System_Int16' )
      & ( 'System_IComparable_1___System_String' != stringLiteral0 )
      & ( sharingMode != 'SharingMode_Unshared' )
      & ( inv != 'SharingMode_LockProtected' )
      & ( 'FirstConsistentOwner' != 'System_Collections_IEnumerable' )
      & ( 'System_Int32' != 'System_IConvertible' )
      & ! [X73: $int,X74: $int,X75: $int] :
          ( ( 'ArrayCategoryValue' = 'ArrayCategory'(X75) )
          | ( true_1 != x(X75,'ValueArray'(X74,X73)) ) )
      & ( 'PeerGroupPlaceholder' != 'System_IComparable' )
      & ( 'System_UInt16' != 'System_UInt32' )
      & ( 'System_Type' != 'System_Byte' )
      & ( 'System_Boolean' != 'NonNullFieldsAreInitialized' )
      & ( ownerFrame != 'PeerGroupPlaceholder' )
      & ( 'System_Boolean' != 'System_UInt64' )
      & ( 'System_UInt16' != 'System_ICloneable' )
      & ! [X76: $int,X77: $int] :
          ( ( ( true_1 = x(typeof(X77),X76) )
            | ( nullObject = X77 )
            | ( true_1 != 'Is'(X77,X76) ) )
          & ( ( true_1 = 'Is'(X77,X76) )
            | ( ( true_1 != x(typeof(X77),X76) )
              & ( nullObject != X77 ) ) ) )
      & ( 'System_SByte' != 'Factorial' )
      & ( 'System_Object' = 'DeclType'(elements) )
      & ( ownerRef != 'System_IEquatable_1___System_String' )
      & ( 'Factorial' != stringLiteral0 )
      & ! [X78: $int,X79: $int,X80: $int,X81: $int] : ( 'ArrayIndexInvY'('ArrayIndex'(X79,X81,X78,X80)) = X80 )
      & ( 'System_IConvertible' != 'Factorial' )
      & ! [X82: $int,X83: $int,X84: $int] : ( 'StructGet'('StructSet'(X82,X84,X83),X84) = X83 )
      & ( 'System_Boolean' != 'System_Int64' )
      & ( 'FirstConsistentOwner' != 'System_Byte' )
      & ( allocated != 'System_UInt64' )
      & ( 'FirstConsistentOwner' != 'System_IntPtr' )
      & ( elements != 'System_Object' )
      & ( 'System_UInt16' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_ICloneable' != 'System_IComparable' )
      & ( 'NonNullFieldsAreInitialized' != 'System_IEquatable_1___System_String' )
      & ( 'System_Char' != 'System_Collections_IEnumerable' )
      & ( localinv != 'SharingMode_Unshared' )
      & ( 'PeerGroupPlaceholder' != 'System_UIntPtr' )
      & ! [X85: $int,X86: $int,X87: $int] :
          ( ( true_1 = x('RefArray'(X87,X85),'RefArray'(X86,X85)) )
          | ( true_1 != x(X87,X86) ) )
      & ! [X88: $int,X89: $int] :
        ? [X90: $int] :
          ( ( true_1 = x(X90,X90) )
          & ( true_1 = x(X90,'System_Array') )
          & ( 'ValueArray'(X89,X88) = X90 ) )
      & ( elements != 'System_Collections_IEnumerable' )
      & ( 'System_SByte' != 'System_UInt32' )
      & ( sharingMode != 'PeerGroupPlaceholder' )
      & ! [X91: $int] :
        ? [X92: $int] :
          ( ~ $less(int_2147483647,X92)
          & ( 'Length'(X91) = X92 )
          & ~ $less(X92,0) )
      & ( 'System_ICloneable' != stringLiteral0 )
      & ( true_1 = x('System_String','System_Collections_Generic_IEnumerable_1___System_Char') )
      & ( 'System_String' != 'System_ICloneable' )
      & ( 'NonNullFieldsAreInitialized' != 'System_IConvertible' )
      & ( exposeVersion != 'System_Int64' )
      & ( ownerFrame != 'System_UInt64' )
      & ( exposeVersion != 'System_Boolean' )
      & ( sharingMode != 'System_Int32' )
      & ! [X93: $int,X94: $int] :
        ? [X95: $int] :
          ( ( typeof(X93) = X95 )
          & ( ( nullObject = X93 )
            | ( ( select2(X94,X93,localinv) = X95 )
              & ( select2(X94,X93,inv) = X95 ) )
            | ( true_1 != 'IsHeap'(X94) )
            | ( true_1 != x(X95,'System_Array') ) ) )
      & ( 'System_String' != 'System_IComparable_1___System_String' )
      & ( 'System_Object' != 'System_String' )
      & ! [X96: $int,X97: $int,X98: $int,X99: $int] :
          ( ( X97 = X98 )
          | ( 'ValueArrayGet'(X96,X98) = 'ValueArrayGet'('ValueArraySet'(X96,X97,X99),X98) ) )
      & ! [X100: $int,X101: $int] :
          ( ( x_2($sum(X100,X101),X101) = x_2(X100,X101) )
          | $less(X101,0)
          | $less(X100,0) )
      & ( 'ArrayCategoryValue' != 'System_Byte' )
      & ( 'System_Byte' != 'System_UInt32' )
      & ( 'System_Type' != 'System_IComparable_1___System_String' )
      & ( 'System_Object' != 'System_IComparable_1___System_String' )
      & ( 'ArrayCategoryInt' != 'System_UInt32' )
      & ( true_1 = x('System_String','System_Collections_IEnumerable') )
      & ( 'SharingMode_Unshared' != 'ArrayCategoryValue' )
      & ( elements != 'System_Char' )
      & ( inv != 'System_UIntPtr' )
      & ( 'System_Int16' != 'System_Int32' )
      & ( 'System_Boolean' != 'System_Char' )
      & ! [X102: $int,X103: $int,X104: $int] :
          ( ( 'ArrayCategoryInt' = 'ArrayCategory'(X102) )
          | ( true_1 != x(X102,'IntArray'(X104,X103)) ) )
      & ( 'ArrayCategoryNonNullRef' != 'System_SByte' )
      & ! [X105: $int] : ( 'ClassReprInv'('ClassRepr'(X105)) = X105 )
      & ( 'ArrayCategoryInt' != 'System_Array' )
      & ! [X106: $int,X107: $int,X108: $int] :
          ( ( nullObject = X107 )
          | ( 'Rank'(X107) = X106 )
          | ( true_1 != x(typeof(X107),'IntArray'(X108,X106)) ) )
      & ( elements != 'System_Int16' )
      & ! [X109: $int,X110: $int] :
        ? [X111: $int] :
          ( ( ~ $less(X110,0)
            | $less(0,X109)
            | ( ~ $less(0,X111)
              & $less(X110,X111) ) )
          & ( x_2(X109,X110) = X111 ) )
      & ( 'System_Object' != 'System_Collections_IEnumerable' )
      & ( ownerFrame != 'System_Object' )
      & ( 'ArrayCategoryInt' != stringLiteral0 )
      & ( inv != 'System_ICloneable' )
      & ( 'FirstConsistentOwner' != 'System_UInt32' )
      & ! [X112: $int,X113: $int] : ( 'ElementType'('RefArray'(X112,X113)) = X112 )
      & ( 'System_Collections_IEnumerable' != stringLiteral0 )
      & ( allocated != 'System_IComparable_1___System_String' )
      & ( ownerRef != 'System_Byte' )
      & ( 'System_Object' != 'System_UInt16' )
      & ( 'ArrayCategoryRef' != 'System_IComparable' )
      & ( true_1 = 'IsMemberlessType'('System_IComparable_1___System_String') )
      & ( allocated != 'System_Char' )
      & ( localinv != 'System_UInt16' )
      & ( 'System_Int16' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( allocated != 'System_Boolean' )
      & ( 'System_Array' != 'System_Byte' )
      & ! [X114: $int,X115: $int,X116: $int,X117: $int] :
          ( ( X114 = X116 )
          | ( 'RefArrayGet'('RefArraySet'(X115,X114,X117),X116) = 'RefArrayGet'(X115,X116) ) )
      & ( elements != 'System_ICloneable' )
      & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != stringLiteral0 )
      & ( exposeVersion != 'ArrayCategoryNonNullRef' )
      & ( true_1 = x('System_ICloneable','System_ICloneable') )
      & ! [X118: $int] :
          ( ( ( ~ $less(X118,0)
              & ~ $less(int_4294967295,X118) )
            | ( true_1 != 'InRange'(X118,'System_UInt32') ) )
          & ( ( true_1 = 'InRange'(X118,'System_UInt32') )
            | $less(X118,0)
            | $less(int_4294967295,X118) ) )
      & ( exposeVersion != 'System_Type' )
      & ( 'System_UInt16' != 'System_IComparable_1___System_String' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Int32' )
      & ( sharingMode != 'Factorial' )
      & ( 'System_Type' != 'System_IConvertible' )
      & ( 'Factorial' = 'AsDirectSubClass'('Factorial',X1) )
      & $less(int_4294967295,int_9223372036854775807)
      & ( allocated != inv )
      & ( true_1 = x('System_IConvertible','System_IConvertible') )
      & ( 'System_UInt32' != 'System_Int64' )
      & ( 'ArrayCategoryInt' != 'ArrayCategoryNonNullRef' )
      & ! [X119: $int,X120: $int] :
          ( ( nullObject = 'As'(X120,X119) )
          | ( true_1 = 'Is'(X120,X119) ) )
      & ( 'System_Int64' != 'System_Collections_IEnumerable' )
      & ! [X121: $int,X122: $int,X123: $int,X124: $int] :
        ? [X125: $int] :
          ( ( 'Box'(X123,X125) = X125 )
          & ( 'UnboxedType'(X125) = X121 )
          & ( 'BoxFunc'(X123,X121,X122,X124) = X125 ) )
      & ( 'System_Char' != 'System_ICloneable' )
      & ( 'System_UInt32' != 'System_Collections_IEnumerable' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Byte' )
      & ( allocated != 'SharingMode_LockProtected' )
      & ( 'System_SByte' != 'System_UInt64' )
      & ( 'SharingMode_LockProtected' != 'System_UIntPtr' )
      & ( exposeVersion != 'System_IComparable_1___System_String' )
      & ( 'System_UIntPtr' != 'System_IntPtr' )
      & ! [X126: $int,X127: $int,X128: $int] :
          ( $less(X128,2)
          | ~ $less(X126,X127)
          | ( x_2(X126,X128) != x_2(X127,X128) )
          | ~ $less(X127,$sum(X126,X128)) )
      & ( 'System_Byte' != 'System_UInt64' )
      & ( 'System_Array' != 'System_IComparable_1___System_String' )
      & ( 'System_Boolean' != 'System_Int32' )
      & ( 'System_UInt32' != 'System_IEquatable_1___System_String' )
      & ( allocated != 'System_UIntPtr' )
      & ( allocated != 'System_Int64' )
      & ( exposeVersion != 'System_IConvertible' )
      & ( exposeVersion != 'Factorial' )
      & ( true_1 = x('System_Collections_IEnumerable','System_Collections_IEnumerable') )
      & ( 'System_UInt64' != 'System_Char' )
      & ! [X129: $int,X130: $int,X131: $int,X132: $int,X133: $int] :
          ( ( true_1 != 'IsHeap'(X133) )
          | ( nullObject != 'RefArrayGet'(select2(X133,X131,elements),X129) )
          | ( true_1 != x(typeof(X131),'NonNullRefArray'(X130,X132)) ) )
      & ( 'System_String' != 'System_UIntPtr' )
      & ( 'System_UInt32' != 'Factorial' )
      & ( sharingMode != 'System_String' )
      & ! [X134: $int,X135: $int,X136: $int] :
          ( ( true_1 != x(X135,'AsDirectSubClass'(X134,X136)) )
          | ( 'OneClassDown'(X135,X136) = X134 ) )
      & ( exposeVersion != 'System_Collections_IEnumerable' )
      & ( 'SharingMode_LockProtected' != 'System_Int16' )
      & ( 'System_Int32' != 'System_Int64' )
      & ( 'System_Array' != 'System_IComparable' )
      & ( exposeVersion != 'System_IEquatable_1___System_String' )
      & ( 'System_IntPtr' != 'System_IComparable_1___System_String' )
      & ( 'ArrayCategoryRef' != 'System_Array' )
      & ( true_1 = 'IncludeInMainFrameCondition'(allocated) )
      & ( 'PeerGroupPlaceholder' != 'System_UInt32' )
      & ( 'System_Char' != 'System_IComparable_1___System_String' )
      & ( 'System_Object' = 'DeclType'(exposeVersion) )
      & ( inv != 'System_String' )
      & ( inv != 'System_IEquatable_1___System_String' )
      & ( true_1 != 'IncludeInMainFrameCondition'(inv) )
      & ( 'System_IComparable_1___System_String' != 'System_Collections_IEnumerable' )
      & ( 'FirstConsistentOwner' != 'System_UIntPtr' )
      & ( 'SharingMode_LockProtected' != 'System_String' )
      & ( 'SharingMode_LockProtected' != ownerFrame )
      & ( 'System_ICloneable' != 'System_Collections_IEnumerable' )
      & ( exposeVersion != 'System_ICloneable' )
      & ( inv != localinv )
      & ( true_1 = x('System_IEquatable_1___System_String','System_Object') )
      & ( 'ArrayCategoryNonNullRef' != 'System_Int64' )
      & ( localinv != 'System_UIntPtr' )
      & ( localinv != 'System_Int32' )
      & ! [X137: $int,X138: $int,X139: $int] :
        ? [X140: $int] :
          ( ( ( true_1 != x(X139,X140) )
            | ( X139 = X140 ) )
          & ( 'IntArray'(X138,X137) = X140 ) )
      & ( 'System_UInt16' != 'System_Int64' )
      & ( 'System_SByte' != 'System_Char' )
      & $less(100000,int_2147483647)
      & ( ownerRef != 'System_UIntPtr' )
      & ( true_1 != 'IncludeInMainFrameCondition'(localinv) )
      & ( 'System_Array' != 'NonNullFieldsAreInitialized' )
      & ( 'PeerGroupPlaceholder' != 'ArrayCategoryValue' )
      & ( 'System_Array' != 'System_UInt16' )
      & ( 'PeerGroupPlaceholder' != 'Factorial' )
      & ( 'ArrayCategoryValue' != 'System_UIntPtr' )
      & ( localinv != 'ArrayCategoryRef' )
      & ! [X141: $int,X142: $int] :
          ( ( $less(X141,0)
            & $less(X142,0) )
          | ~ $less(and_1(X142,X141),0) )
      & ( 'System_String' != 'System_UInt64' )
      & ( true_1 = 'IsMemberlessType'('System_IEquatable_1___System_String') )
      & ! [X143: $int,X144: $int] : ( 0 = 'LBound'(X144,X143) )
      & ( ownerFrame != 'System_UIntPtr' )
      & ( elements != 'System_UInt32' )
      & ( 'System_Boolean' != 'System_IEquatable_1___System_String' )
      & ! [X145: $int,X146: $int] : ( 'System_Object' = typeof('ElementProxyStruct'(X146,X145)) )
      & ( ownerRef != 'System_Collections_IEnumerable' )
      & ( 'PeerGroupPlaceholder' != 'System_ICloneable' )
      & ( ownerRef != 'System_SByte' )
      & ( true_1 = 'IsValueType'('System_Boolean') )
      & ! [X147: $int,X148: $int] :
          ( $less(X148,1)
          | ( x_1(shr(X147,$sum(X148,$uminus(1))),2) = shr(X147,X148) ) )
      & ( ownerFrame != 'Factorial' )
      & ( elements != 'System_UIntPtr' )
      & ( exposeVersion != 'System_IntPtr' )
      & ( allocated != ownerRef )
      & ( 'System_Char' != 'System_IComparable' )
      & ! [X149: $int,X150: $int,X151: $int,X152: $int] :
          ( ( 'BoxFunc'(X150,X149,X151,X152) = X150 )
          | ( true_1 = 'IsValueType'('UnboxedType'(X150)) ) )
      & ( true_1 != 'IsStaticField'(allocated) )
      & ( 'System_IntPtr' != 'System_IComparable' )
      & ( 'FirstConsistentOwner' != 'System_IComparable_1___System_String' )
      & ( sharingMode != 'System_Object' )
      & ( true_1 = x('System_String','System_String') )
      & ( sharingMode != 'System_SByte' )
      & ( 'System_Byte' != 'System_Int32' )
      & ( 'SharingMode_Unshared' != 'System_Int64' )
      & ( true_1 != 'IsStaticField'(elements) )
      & ( true_1 = 'IsValueType'('System_Byte') )
      & ( allocated != 'PeerGroupPlaceholder' )
      & ( 'ArrayCategoryInt' != 'System_UInt16' )
      & ( 'System_Object' != 'System_IComparable' )
      & ( 'NonNullFieldsAreInitialized' != 'System_UInt32' )
      & ( 'System_Int64' != 'System_IComparable_1___System_String' )
      & ( 'SharingMode_Unshared' != 'Factorial' )
      & ( ownerFrame != 'System_UInt16' )
      & ! [X153: $int] : ( shl(X153,0) = X153 )
      & ! [X154: $int,X155: $int] : ( 'ElementType'('NonNullRefArray'(X154,X155)) = X154 )
      & ( 'ArrayCategoryInt' != 'Factorial' )
      & ( 'System_Boolean' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_String' != 'System_Collections_IEnumerable' )
      & ! [X156: $int,X157: $int] :
          ( ( shl(X157,X156) = $product(shl(X157,$sum(X156,$uminus(1))),2) )
          | $less(X156,1) )
      & ( 'ArrayCategoryNonNullRef' != 'System_Type' )
      & ( 'System_UInt32' != 'System_IConvertible' )
      & ( 'System_Array' != 'System_UInt32' )
      & ( allocated != 'System_UInt32' )
      & ( elements != 'System_Byte' )
      & ( localinv != 'System_Char' )
      & ( 'SharingMode_Unshared' != 'System_Type' )
      & ( 'System_SByte' != 'System_UIntPtr' )
      & ( exposeVersion != ownerFrame )
      & ( sharingMode != 'System_Array' )
      & ! [X158: $int] : ( nullObject != 'ClassRepr'(X158) )
      & ( 'ArrayCategoryInt' != 'System_IConvertible' )
      & ( 'System_Type' != 'System_Int32' )
      & ( 'ArrayCategoryNonNullRef' != 'System_IComparable' )
      & ( elements != ownerFrame )
      & ( 'System_IConvertible' != 'System_IEquatable_1___System_String' )
      & ( 'System_Array' != 'System_Char' )
      & ( allocated != 'ArrayCategoryValue' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Char' )
      & ( 'ArrayCategoryInt' != 'System_Object' )
      & ( exposeVersion != 'System_Char' )
      & ( 'SharingMode_Unshared' != 'FirstConsistentOwner' )
      & ( sharingMode != 'System_UInt16' )
      & ( 'System_SByte' != 'System_IEquatable_1___System_String' )
      & ( ownerRef != 'FirstConsistentOwner' )
      & ( 'System_String' = 'AsImmutable'('System_String') )
      & ( 'ArrayCategoryInt' != 'System_SByte' )
      & ( 'System_Object' != 'System_Int64' )
      & ( 'System_Object' != 'System_IntPtr' )
      & ( ownerFrame != 'System_SByte' )
      & ( 'System_Object' = X0 )
      & ( allocated != elements )
      & ( 'SharingMode_LockProtected' != 'System_Type' )
      & ( 'System_Int16' != 'System_IEquatable_1___System_String' )
      & ( 'System_SByte' != 'System_Byte' )
      & ! [X159: $int,X160: $int] :
          ( ( 'Box'('Unbox'(X160),X160) = X160 )
          | ( nullObject = 'BoxTester'(X160,X159) ) )
      & ( true_1 = x('System_String','System_IComparable') )
      & ( 'SharingMode_Unshared' != 'SharingMode_LockProtected' )
      & ( localinv != sharingMode )
      & ( 'SharingMode_LockProtected' != 'System_Collections_IEnumerable' )
      & ( 'ArrayCategoryRef' != 'System_Int32' )
      & ( 'ArrayCategoryInt' != 'System_Int64' )
      & ( 'System_Int64' != 'System_Char' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Char' )
      & ( 'SharingMode_LockProtected' != stringLiteral0 )
      & ( 'System_Char' != 'System_IConvertible' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'ArrayCategoryRef' != 'System_IComparable_1___System_String' )
      & ( 'SharingMode_Unshared' != 'ArrayCategoryNonNullRef' )
      & ( 'NonNullFieldsAreInitialized' != 'System_IComparable' )
      & ! [X161: $int] :
          ( ( ( ~ $less(X161,0)
              & $less(X161,65536) )
            | ( true_1 != 'InRange'(X161,'System_UInt16') ) )
          & ( ( true_1 = 'InRange'(X161,'System_UInt16') )
            | $less(X161,0)
            | ~ $less(X161,65536) ) )
      & ( elements != 'ArrayCategoryInt' )
      & ( 'Factorial' = 'AsMutable'('Factorial') )
      & ( 'SharingMode_LockProtected' != 'ArrayCategoryValue' )
      & ( inv != ownerRef )
      & ( 'System_Int64' != 'System_IComparable' )
      & ( 'SharingMode_Unshared' != 'ArrayCategoryInt' )
      & ( exposeVersion != ownerRef )
      & ( 'System_String' != 'System_Int16' )
      & ( elements != 'System_Int32' )
      & ( sharingMode != 'System_UInt32' )
      & ( 'ArrayCategoryRef' != 'System_UIntPtr' )
      & ! [X162: $int] : ( true_1 != x(typeof('ClassRepr'(X162)),'System_Object') )
      & ! [X163: $int,X164: $int,X165: $int,X166: $int] :
        ? [X167: $int] :
          ( ( ( nullObject = X167 )
            | ( true_1 != 'IsHeap'(X163) )
            | ( ( select2(X163,X167,ownerRef) = X164 )
              & ( select2(X163,X167,ownerFrame) = X165 ) ) )
          & ( select2(X163,X164,'AsRepField'(X166,X165)) = X167 ) )
      & ( 'ArrayCategoryNonNullRef' != 'System_UInt64' )
      & ( 'FirstConsistentOwner' != 'System_SByte' )
      & ( 'SharingMode_LockProtected' != 'System_IConvertible' )
      & ( 'System_String' != 'System_IConvertible' )
      & ( 'System_Int64' != 'System_IEquatable_1___System_String' )
      & ( 'ArrayCategoryRef' != 'System_String' )
      & ( 'SharingMode_LockProtected' != 'System_UInt64' )
      & ( 'SharingMode_LockProtected' != 'Factorial' )
      & ( 'PeerGroupPlaceholder' != 'System_String' )
      & ( inv != 'ArrayCategoryRef' )
      & ( 'PeerGroupPlaceholder' != 'System_Int16' )
      & ( 'System_IConvertible' != 'System_IComparable_1___System_String' )
      & ( 'System_IConvertible' != 'System_IComparable' )
      & ( $sum(int_m2147483648,1) = $sum(0,$uminus(int_2147483647)) )
      & ( inv != 'Factorial' )
      & ( 'System_IntPtr' != 'System_Collections_IEnumerable' )
      & ( 'ArrayCategoryValue' != stringLiteral0 )
      & ( elements != 'ArrayCategoryValue' )
      & ( 'NonNullFieldsAreInitialized' != 'System_IComparable_1___System_String' )
      & ( 'System_UInt32' != 'System_UIntPtr' )
      & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'Factorial' )
      & ( 'ArrayCategoryInt' != 'FirstConsistentOwner' )
      & ( 'System_IComparable_1___System_String' != 'Factorial' )
      & ( 'System_Array' != 'System_UIntPtr' )
      & ( true_1 = 'IncludeInMainFrameCondition'(exposeVersion) )
      & ( 'PeerGroupPlaceholder' != 'System_Byte' )
      & ( 'System_String' != 'System_Char' )
      & ( 'System_UIntPtr' != 'System_ICloneable' )
      & ( 'System_Object' != 'System_UIntPtr' )
      & ! [X168: $int,X169: $int,X170: $int] :
        ? [X171: $int] :
          ( ( ( ( true_1 = x(X171,X169) )
              & ( 'RefArray'(X171,X170) = X168 )
              & ( X168 != X169 ) )
            | ( true_1 != x(X168,'RefArray'(X169,X170)) ) )
          & ( 'ElementType'(X168) = X171 ) )
      & ( 'FirstConsistentOwner' != 'Factorial' )
      & ( 'FirstConsistentOwner' != 'System_ICloneable' )
      & ! [X172: $int,X173: $int] :
        ? [X174: $int] :
          ( ( true_1 = x(X174,X174) )
          & ( true_1 = x(X174,'System_Array') )
          & ( 'NonNullRefArray'(X173,X172) = X174 ) )
      & ( 'SharingMode_LockProtected' != 'FirstConsistentOwner' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Int16' )
      & ( sharingMode != 'ArrayCategoryRef' )
      & ( ownerFrame != 'System_Collections_IEnumerable' )
      & ! [X175: $int,X176: $int,X177: $int] :
          ( ( true_1 != 'InRange'(X176,X175) )
          | ( 'IntToInt'(X176,X177,X175) = X176 ) )
      & ( true_1 != 'IsImmutable'('Factorial') )
      & ! [X178: $int,X179: $int,X180: $int] :
          ( ( true_1 = 'StringEquals'(X178,X180) )
          | ( true_1 != 'StringEquals'(X179,X180) )
          | ( true_1 != 'StringEquals'(X178,X179) ) )
      & ! [X181: $int] : ( true_1 != 'IsMemberlessType'(typeof(X181)) )
      & ( 'System_Int16' != 'System_UInt64' )
      & ( 'System_UInt32' != 'System_IntPtr' )
      & ( sharingMode != 'ArrayCategoryValue' )
      & ( 'SharingMode_LockProtected' != 'System_SByte' )
      & ( 'SharingMode_Unshared' != 'PeerGroupPlaceholder' )
      & ( 'System_Type' != 'System_Int16' )
      & ( localinv != 'System_Object' )
      & ! [X182: $int,X183: $int] : ( 'ElementType'('ValueArray'(X183,X182)) = X183 )
      & ( ownerRef != 'System_Int32' )
      & ! [X184: $int,X185: $int,X186: $int] :
        ? [X187: $int] :
          ( ( 'ValueArray'(X185,X184) = X187 )
          & ( ( X186 = X187 )
            | ( true_1 != x(X186,X187) ) ) )
      & ( 'System_String' != 'System_IntPtr' )
      & ( 'ArrayCategoryRef' != stringLiteral0 )
      & ( 'ArrayCategoryRef' != 'Factorial' )
      & ( localinv != 'NonNullFieldsAreInitialized' )
      & ( allocated != 'System_String' )
      & ( 'System_Type' != 'System_SByte' )
      & ( 'System_UInt16' != 'System_Char' )
      & ( allocated != 'System_SByte' )
      & ! [X188: $int,X189: $int,X190: $int,X191: $int,X192: $int] :
        ? [X193: $int] :
          ( ( select2(X191,X189,'AsElementsRepField'(X192,X188,X190)) = X193 )
          & ? [X194: $int] :
              ( ( ( true_1 != 'IsHeap'(X191) )
                | ( nullObject = X193 )
                | ( ( select2(X191,X194,ownerRef) = X189 )
                  & ( select2(X191,X194,ownerFrame) = X188 ) ) )
              & ( 'ElementProxy'(X193,X190) = X194 ) ) )
      & ( 'SharingMode_LockProtected' != 'NonNullFieldsAreInitialized' )
      & ( allocated != 'System_IConvertible' )
      & ( ownerRef != 'System_IConvertible' )
      & ( 'ArrayCategoryValue' != 'System_Collections_IEnumerable' )
      & ( ownerFrame != 'System_UInt32' )
      & ( allocated != 'ArrayCategoryInt' )
      & ( 'System_Object' != 'System_UInt32' )
      & ( 'System_Char' != 'Factorial' )
      & ( 'System_Type' != 'System_IntPtr' )
      & ( elements != 'System_String' )
      & ( localinv != ownerFrame )
      & ( 'System_Int16' != 'System_UInt32' )
      & ( 'SharingMode_Unshared' != 'System_UInt64' )
      & ( localinv != stringLiteral0 )
      & ( 'ArrayCategoryValue' != 'FirstConsistentOwner' )
      & ( exposeVersion != sharingMode )
      & ( 'System_Boolean' != 'System_IConvertible' )
      & ( localinv != 'System_IntPtr' )
      & ! [X195: $int,X196: $int,X197: $int] :
          ( ( 'IfThenElse'(X196,X195,X197) = X197 )
          | ( true_1 = X196 ) )
      & ( ownerFrame != 'System_ICloneable' )
      & ( 'NonNullFieldsAreInitialized' != 'System_UIntPtr' )
      & ! [X198: $int,X199: $int,X200: $int] :
        ? [X201: $int] :
          ( ( ( true_1 != x(X201,X198) )
            | ( X198 = X201 )
            | ( true_1 = x('System_Array',X198) ) )
          & ( 'ValueArray'(X200,X199) = X201 ) )
      & ( sharingMode != 'NonNullFieldsAreInitialized' )
      & ( inv != 'NonNullFieldsAreInitialized' )
      & ( 'System_Object' != 'System_SByte' )
      & ( 'ArrayCategoryInt' != 'System_Int16' )
      & ! [X202: $int,X203: $int,X204: $int] :
          ( ( nullObject = X203 )
          | ( true_1 != x(typeof(X203),'ValueArray'(X204,X202)) )
          | ( 'Rank'(X203) = X202 ) )
      & ! [X205: $int,X206: $int,X207: $int] :
          ( ( 'Rank'(X207) = X206 )
          | ( nullObject = X207 )
          | ( true_1 != x(typeof(X207),'NonNullRefArray'(X205,X206)) ) )
      & ( 'PeerGroupPlaceholder' != stringLiteral0 )
      & ! [X208: $int,X209: $int] :
          ( ( ( 'AsImmutable'(X209) = X209 )
            & ( true_1 = 'IsImmutable'(X209) ) )
          | ( true_1 != x(X209,'AsImmutable'(X208)) ) )
      & ( 'System_Object' = 'DeclType'('NonNullFieldsAreInitialized') )
      & ( 'System_SByte' != 'System_IntPtr' )
      & ( 'System_SByte' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_UInt32' != 'System_Char' )
      & ( ownerRef != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( ownerFrame != 'ArrayCategoryValue' )
      & ( inv != 'System_Byte' )
      & ( inv != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ! [X210: $int,X211: $int] :
          ( ( 'AsRefField'(X210,X211) = X210 )
          | ( 'AsNonNullRefField'(X210,X211) != X210 ) )
      & ! [X212: $int,X213: $int,X214: $int] :
          ( ( true_1 = 'IsAllocated'(X214,'ValueArrayGet'(X212,X213)) )
          | ( true_1 != 'IsAllocated'(X214,X212) ) )
      & ( 'System_Byte' != 'System_Int64' )
      & ! [X215: $int,X216: $int] : ( 'System_Object' = typeof('ElementProxy'(X216,X215)) )
      & ( 'SharingMode_Unshared' != 'System_IEquatable_1___System_String' )
      & ( 'System_Array' != 'System_IEquatable_1___System_String' )
      & ( exposeVersion != 'NonNullFieldsAreInitialized' )
      & ( allocated != 'System_Int16' )
      & ( 'System_Array' != 'System_Int16' )
      & ( localinv != 'System_Boolean' )
      & ( sharingMode != 'ArrayCategoryInt' )
      & ( sharingMode != 'SharingMode_LockProtected' )
      & ( localinv != 'System_IComparable_1___System_String' )
      & ! [X217: $int] :
          ( ! [X218: $int,X219: $int] :
            ? [X220: $int] :
              ( ? [X221: $int] :
                  ( ( ( ( select2(X218,X220,localinv) = X221 )
                      & ( select2(X218,X220,inv) = X221 ) )
                    | ( true_1 != 'IsHeap'(X218) ) )
                  & ( typeof(X220) = X221 ) )
              & ( 'Box'(X219,X217) = X220 ) )
          | ( true_1 != 'IsValueType'('UnboxedType'(X217)) ) )
      & ( 'System_Int32' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_Array' != 'Factorial' )
      & ( ownerRef != 'System_UInt16' )
      & ( 'System_UInt16' != 'System_IEquatable_1___System_String' )
      & ( exposeVersion != 'System_Byte' )
      & ( 'System_SByte' != 'System_Int64' )
      & ( 'ArrayCategoryNonNullRef' != 'System_IComparable_1___System_String' )
      & ( inv != 'System_IntPtr' )
      & ( true_1 != 'IncludedInModifiesStar'(ownerFrame) )
      & ( 'System_UInt64' != 'System_IEquatable_1___System_String' )
      & ( 'SharingMode_Unshared' != 'System_UIntPtr' )
      & ( 'SharingMode_LockProtected' != ownerRef )
      & ( exposeVersion != 'PeerGroupPlaceholder' )
      & ( sharingMode != 'System_IEquatable_1___System_String' )
      & ( 'System_IComparable_1___System_String' = 'AsInterface'('System_IComparable_1___System_String') )
      & ( 'System_Boolean' != 'System_IComparable' )
      & ! [X222: $int,X223: $int] :
        ? [X224: $int] :
          ( ( 'Box'(X222,X223) = X224 )
          & ( ( X222 = X223 )
            | ( X223 != X224 )
            | ( true_1 != x('UnboxedType'(X224),'System_Object') ) ) )
      & ( elements != inv )
      & ( elements != 'System_IntPtr' )
      & ( 'System_UInt64' != 'System_UIntPtr' )
      & ( exposeVersion != 'System_UInt32' )
      & ! [X225: $int,X226: $int] : ( 'Unbox'('Box'(X225,X226)) = X225 )
      & ( 'ArrayCategoryInt' != 'System_IComparable_1___System_String' )
      & ( 'System_Int16' != 'System_UIntPtr' )
      & ( 'ArrayCategoryInt' != 'System_String' )
      & ( 'SharingMode_LockProtected' != 'System_Object' )
      & ( true_1 = 'IsMemberlessType'('System_ICloneable') )
      & ( 'System_Byte' != 'System_IComparable_1___System_String' )
      & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_IComparable' )
      & ( 'SharingMode_LockProtected' != 'ArrayCategoryNonNullRef' )
      & ( true_1 = x('System_IComparable','System_Object') )
      & ( ownerFrame != 'System_Int16' )
      & ! [X227: $int] :
          ( ( ( $less(X227,32768)
              & ~ $less(X227,$sum(0,$uminus(32768))) )
            | ( true_1 != 'InRange'(X227,'System_Int16') ) )
          & ( ( true_1 = 'InRange'(X227,'System_Int16') )
            | ~ $less(X227,32768)
            | $less(X227,$sum(0,$uminus(32768))) ) )
      & ! [X228: $int,X229: $int] :
        ? [X230: $int] :
          ( ( select2(X229,X228,'FirstConsistentOwner') = X230 )
          & ? [X231: $int,X232: $int,X233: $int,X234: $int] :
              ( ( select2(X229,X230,ownerFrame) = X231 )
              & ( select2(X229,X228,ownerFrame) = X234 )
              & ( select2(X229,X230,ownerRef) = X232 )
              & ( ( true_1 != select2(X229,X228,allocated) )
                | ( 'PeerGroupPlaceholder' = X234 )
                | ( select2(X229,X233,localinv) = 'BaseClass'(X234) )
                | ( nullObject = X228 )
                | ( true_1 != x(select2(X229,X233,inv),X234) )
                | ( ( true_1 = select2(X229,X230,allocated) )
                  & ( ( true_1 != x(select2(X229,X232,inv),X231) )
                    | ( 'PeerGroupPlaceholder' = X231 )
                    | ( select2(X229,X232,localinv) = 'BaseClass'(X231) ) )
                  & ( nullObject != X230 ) )
                | ( true_1 != 'IsHeap'(X229) ) )
              & ( select2(X229,X228,ownerRef) = X233 ) ) )
      & ( allocated != 'System_Byte' )
      & ( 'System_String' != 'Factorial' )
      & ( ownerFrame != 'System_Int32' )
      & ( sharingMode != 'System_IntPtr' )
      & ( 'System_Object' != 'System_IEquatable_1___System_String' )
      & ( localinv != 'System_IComparable' )
      & ( true_1 = 'IsValueType'('System_Int64') )
      & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_Collections_IEnumerable' )
      & ( true_1 = x('System_String','System_IEquatable_1___System_String') )
      & ( 'System_Int16' != 'System_IComparable' )
      & ( 'System_Type' != 'Factorial' )
      & ( 'ArrayCategoryRef' != 'FirstConsistentOwner' )
      & ( elements != exposeVersion )
      & ( 'ArrayCategoryInt' != 'System_UInt64' )
      & ( 'System_Byte' != 'System_IComparable' )
      & ( 'System_UInt64' != stringLiteral0 )
      & ! [X235: $int,X236: $int] :
        ? [X237: $int] :
          ( ( ~ $less(X235,32768)
            | $less(16,X236)
            | $less(X236,0)
            | $less(X235,0)
            | ( ~ $less(int_2147483647,X237)
              & ~ $less(X237,0) ) )
          & ( shl(X235,X236) = X237 ) )
      & ( sharingMode != 'System_Byte' )
      & ( 'ArrayCategoryValue' != 'System_IntPtr' )
      & ( 'ArrayCategoryNonNullRef' != 'FirstConsistentOwner' )
      & ( 'System_Int64' != 'Factorial' )
      & ( 'System_Int16' != 'System_IConvertible' )
      & ! [X238: $int] :
          ( ( ( $less(X238,128)
              & ~ $less(X238,$sum(0,$uminus(128))) )
            | ( true_1 != 'InRange'(X238,'System_SByte') ) )
          & ( ( true_1 = 'InRange'(X238,'System_SByte') )
            | ~ $less(X238,128)
            | $less(X238,$sum(0,$uminus(128))) ) )
      & ( localinv != 'System_String' )
      & ( inv != 'ArrayCategoryNonNullRef' )
      & ( 'SharingMode_Unshared' != 'System_IComparable_1___System_String' )
      & ( localinv != 'System_SByte' )
      & ! [X239: $int,X240: $int] :
        ? [X241: $int] :
          ( ( $sum(X240,$uminus(X239)) = X241 )
          & ( $less(X239,0)
            | $less(X241,0)
            | ( x_2(X241,X239) = x_2(X240,X239) ) ) )
      & ( 'ArrayCategoryRef' != 'System_Byte' )
      & ( 'System_IComparable' != stringLiteral0 )
      & ( 'System_IntPtr' != 'System_IEquatable_1___System_String' )
      & ( 'System_UInt32' != 'System_IComparable' )
      & ( 'System_String' != 'System_SByte' )
      & ( ownerFrame != 'System_String' )
      & ( 'SharingMode_LockProtected' != 'System_Int64' )
      & ( true_1 = 'IsMemberlessType'('System_Collections_Generic_IEnumerable_1___System_Char') )
      & ! [X242: $int,X243: $int,X244: $int] :
          ( ( true_1 != 'System_String_Equals_System_String_System_String'(X242,X243,X244) )
          | ( 'System_String_IsInterned_System_String_notnull'(X242,X244) = 'System_String_IsInterned_System_String_notnull'(X242,X243) )
          | ( nullObject = X243 )
          | ( nullObject = X244 ) )
      & ( 'System_Boolean' != stringLiteral0 )
      & ( 'ArrayCategoryNonNullRef' != 'System_Array' )
      & ( 'ArrayCategoryValue' != 'System_Char' )
      & ( 'FirstConsistentOwner' != 'System_UInt64' )
      & ( 'PeerGroupPlaceholder' != 'System_IntPtr' )
      & ( true_1 = 'IsValueType'('System_UInt64') )
      & ! [X245: $int,X246: $int,X247: $int,X248: $int] :
          ( ( 'IntArrayGet'('IntArraySet'(X248,X247,X246),X245) = 'IntArrayGet'(X248,X245) )
          | ( X245 = X247 ) )
      & ( 'ArrayCategoryValue' != 'System_IComparable_1___System_String' )
      & ( 'System_IConvertible' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( true_1 = x('System_ICloneable','System_Object') )
      & ( 'SharingMode_Unshared' != 'System_UInt16' )
      & ( ownerRef != 'System_Type' )
      & ( 'ArrayCategoryValue' != 'ArrayCategoryRef' )
      & ( 'System_Boolean' != 'System_Type' )
      & ( allocated != 'System_Type' )
      & ( 'System_Int32' != 'System_Collections_IEnumerable' )
      & ( 'System_Int64' != 'System_UInt64' )
      & ( localinv != 'ArrayCategoryInt' )
      & ( localinv != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( sharingMode != ownerRef )
      & ! [X249: $int,X250: $int] :
        ? [X251: $int] :
          ( ( min(X249,X250) = X251 )
          & ( ( X250 = X251 )
            | ( X249 = X251 ) )
          & ~ $less(X250,X251)
          & ~ $less(X249,X251) )
      & ! [X252: $int] : ( 'TypeName'('TypeObject'(X252)) = X252 )
      & ( true_1 = 'IsValueType'('System_Int32') )
      & ( 'ArrayCategoryNonNullRef' != 'System_Byte' )
      & ( allocated != 'System_ICloneable' )
      & ( elements != 'FirstConsistentOwner' )
      & ( 'ArrayCategoryInt' != 'System_UIntPtr' )
      & ( 'NonNullFieldsAreInitialized' != 'System_UInt64' )
      & ( allocated != 'System_IntPtr' )
      & ( 'System_Type' != 'System_Collections_IEnumerable' )
      & ! [X253: $int,X254: $int,X255: $int] :
        ? [X256: $int] :
          ( ( ( nullObject = X256 )
            | ( ( select2(X254,X256,ownerRef) = select2(X254,X255,ownerRef) )
              & ( select2(X254,X256,ownerFrame) = select2(X254,X255,ownerFrame) ) )
            | ( true_1 != 'IsHeap'(X254) ) )
          & ( select2(X254,X255,'AsPeerField'(X253)) = X256 ) )
      & ( 'System_Array' != 'System_Int64' )
      & ( localinv != 'System_Int64' )
      & ( 'SharingMode_Unshared' != 'System_String' )
      & ( true_1 = x('System_IConvertible','System_Object') )
      & ( 'System_SByte' != 'System_Int16' )
      & ( sharingMode != 'System_Boolean' )
      & ( 'SharingMode_Unshared' != 'NonNullFieldsAreInitialized' )
      & ( ownerRef != 'System_Boolean' )
      & ! [X257: $int] :
          ( ( true_1 != 'IsHeap'(X257) )
          | ( true_1 = select2(X257,stringLiteral0,allocated) ) )
      & ( 'System_IConvertible' != stringLiteral0 )
      & ( 'System_Int32' != 'System_UInt64' )
      & ( true_1 = 'IsValueType'('System_IntPtr') )
      & ( 'System_Object' != 'System_Int16' )
      & ( localinv != 'System_Int16' )
      & ( 'System_Byte' != 'System_UInt16' )
      & ( 'System_Int32' != 'System_IComparable' )
      & ( 'System_IConvertible' != 'System_Collections_IEnumerable' )
      & ( 'System_Array' != 'System_Type' )
      & ( 'System_Int32' != 'Factorial' )
      & ( 'System_Int16' != 'Factorial' )
      & ( 'SharingMode_Unshared' != 'System_IntPtr' )
      & ! [X258: $int,X259: $int] :
        ? [X260: $int] :
          ( ~ $less(X260,X259)
          & ( max(X258,X259) = X260 )
          & ~ $less(X260,X258)
          & ( ( X259 = X260 )
            | ( X258 = X260 ) ) )
      & ( 'System_Object' != stringLiteral0 )
      & ( 'FirstConsistentOwner' != 'System_IComparable' )
      & ( 'ArrayCategoryInt' != 'System_Int32' )
      & ( 'ArrayCategoryValue' != 'System_Boolean' )
      & ( elements != 'System_Int64' )
      & ( true_1 = 'IsValueType'('System_Int16') )
      & ( 'Factorial' != 'System_Collections_IEnumerable' )
      & ( true_1 != 'IncludeInMainFrameCondition'('FirstConsistentOwner') )
      & ( ownerRef != 'System_UInt32' )
      & ( 'FirstConsistentOwner' != 'System_IEquatable_1___System_String' )
      & ( 'SharingMode_Unshared' != 'ArrayCategoryRef' )
      & ( elements != 'System_IComparable_1___System_String' )
      & ( 'System_IEquatable_1___System_String' != 'System_IComparable' )
      & ( 'System_Type' != 'System_IComparable' )
      & ( true_1 = 'IncludeInMainFrameCondition'(elements) )
      & ( allocated != stringLiteral0 )
      & ( 'System_Int64' != 'System_IntPtr' )
      & ! [X261: $int] :
          ( ( stringLiteral0 = 'System_String_IsInterned_System_String_notnull'(X261,stringLiteral0) )
          | ( true_1 != 'IsHeap'(X261) ) )
      & ( 'System_UInt64' != 'System_IComparable' )
      & ! [X262: $int,X263: $int,X264: $int] :
          ( ( true_1 != 'IsHeap'(X263) )
          | ( true_1 != select2(X263,X262,allocated) )
          | ( true_1 = select2(X263,select2(X263,X262,X264),allocated) ) )
      & ( true_1 = x('System_String','System_IConvertible') )
      & ( 'System_ICloneable' != 'System_IConvertible' )
      & ( 'FirstConsistentOwner' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'ArrayCategoryValue' != 'System_UInt32' )
      & ( inv != 'ArrayCategoryValue' )
      & ( 'ArrayCategoryRef' != 'System_ICloneable' )
      & ( 'ArrayCategoryValue' != 'System_SByte' )
      & ( ownerFrame != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ! [X265: $int,X266: $int] :
          ( ( true_1 = select2(X266,'ClassRepr'(X265),allocated) )
          | ( true_1 != 'IsHeap'(X266) ) )
      & ( true_1 = x('System_Type','System_Object') )
      & ( elements != 'System_Type' )
      & ( 'System_IConvertible' = 'AsInterface'('System_IConvertible') )
      & ( 'SharingMode_LockProtected' != 'System_UInt16' )
      & ( 'PeerGroupPlaceholder' != 'System_UInt16' )
      & ! [X267: $int,X268: $int] : ( $sum(X267,$uminus($product(x_1(X267,X268),X268))) = x_2(X267,X268) )
      & ( 'PeerGroupPlaceholder' != 'FirstConsistentOwner' )
      & ( 'System_String' != 'FirstConsistentOwner' )
      & ( localinv != 'ArrayCategoryValue' )
      & ( ownerFrame != 'ArrayCategoryInt' )
      & ( exposeVersion != 'ArrayCategoryRef' )
      & ( 'System_UInt16' != 'System_IntPtr' )
      & ( 'ArrayCategoryValue' != 'System_String' )
      & ( 'System_String' != 'System_IEquatable_1___System_String' )
      & ( 'System_Array' != 'FirstConsistentOwner' )
      & ( inv != 'System_Char' )
      & ( 'ArrayCategoryNonNullRef' != 'System_UInt16' )
      & ( ownerFrame != 'System_IntPtr' )
      & ( 'System_Int16' != 'System_Char' )
      & ( 'ArrayCategoryValue' != 'System_IEquatable_1___System_String' )
      & ( 'SharingMode_LockProtected' != 'PeerGroupPlaceholder' )
      & ( 'SharingMode_LockProtected' != 'System_IEquatable_1___System_String' )
      & ! [X269: $int,X270: $int,X271: $int] :
        ? [X272: $int] :
          ( ( ( true_1 != 'NonNullRefArrayRaw'(X269,X271,X270) )
            | ( ( true_1 = x(X272,'System_Array') )
              & ( true_1 = x(X271,'ElementType'(X272)) )
              & ( 'Rank'(X269) = X270 ) ) )
          & ( typeof(X269) = X272 ) )
      & ! [X273: $int,X274: $int,X275: $int,X276: $int] :
          ( ( 'StructGet'('StructSet'(X274,X275,X276),X273) = 'StructGet'(X274,X273) )
          | ( X273 = X275 ) )
      & ( sharingMode != 'System_IComparable' )
      & ( 'StringLength'(stringLiteral0) = 19 )
      & ( inv != ownerFrame )
      & ( 'ArrayCategoryInt' != 'System_Type' )
      & ! [X277: $int,X278: $int,X279: $int] :
        ? [X280: $int,X281: $int] :
          ( ( ( X278 != X280 )
            | ( true_1 != x('UnboxedType'(X281),X280) )
            | ( X277 != X281 )
            | ( true_1 = x(typeof(X277),X278) ) )
          & ( 'Box'(X279,X277) = X281 )
          & ( 'AsInterface'(X278) = X280 ) )
      & ( exposeVersion != 'System_String' )
      & ( inv != 'System_Int64' )
      & ( 'NonNullFieldsAreInitialized' != 'FirstConsistentOwner' )
      & ( localinv != 'System_ICloneable' )
      & ( 'ArrayCategoryNonNullRef' != 'System_String' )
      & ( 'System_UIntPtr' != 'System_Collections_IEnumerable' )
      & ( elements != 'SharingMode_Unshared' )
      & ! [X282: $int,X283: $int,X284: $int] :
          ( ( true_1 != x(X284,'RefArray'(X283,X282)) )
          | ( 'ArrayCategoryRef' = 'ArrayCategory'(X284) ) )
      & ( ownerRef != 'ArrayCategoryNonNullRef' )
      & ( 'System_Char' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'ArrayCategoryValue' != 'Factorial' )
      & ( 'System_Int32' != 'System_UInt32' )
      & ( 'System_Object' != 'System_IConvertible' )
      & ( ( true_1 != 'PurityAxiomsCanBeAssumed' )
        | ! [X285: $int,X286: $int] :
          ? [X287: $int] :
            ( ( 'Factorial_recursiveFac_System_Int32'(X285,X286) = X287 )
            & ( ( true_1 != 'IsHeap'(X285) )
              | ( ( ( 0 != X286 )
                  | ( 1 = X287 ) )
                & ( ( 0 = X286 )
                  | ( $product(X286,'Factorial_recursiveFac_System_Int32'(X285,$sum(X286,$uminus(1)))) = X287 ) ) ) ) ) )
      & ( inv != 'System_UInt32' )
      & ! [X288: $int,X289: $int,X290: $int] :
          ( ( true_1 != x(typeof(X288),'RefArray'(X290,X289)) )
          | ( nullObject = X288 )
          | ( 'Rank'(X288) = X289 ) )
      & ( 'System_IEquatable_1___System_String' != 'System_IComparable_1___System_String' )
      & ( 'System_Array' != 'System_SByte' )
      & $less(int_9223372036854775807,int_18446744073709551615)
      & ( 'System_Boolean' != 'System_Object' )
      & ( 'System_Int64' != 'System_ICloneable' )
      & ( ownerRef != 'System_IComparable' )
      & ( 'System_UInt64' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ! [X291: $int] :
        ? [X292: $int] :
          ( ( true_1 = x(X291,X292) )
          & ( ( 'System_Object' = X291 )
            | ( X291 != X292 ) )
          & ( 'BaseClass'(X291) = X292 ) )
      & ! [X293: $int,X294: $int] :
          ( ( ( 'AsMutable'(X293) = X293 )
            & ( true_1 != 'IsImmutable'(X293) ) )
          | ( true_1 != x(X293,'AsMutable'(X294)) ) )
      & ( true_1 = 'IsValueType'('System_Char') )
      & ( 'FirstConsistentOwner' != 'System_Int32' )
      & ( 'PeerGroupPlaceholder' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'ArrayCategoryInt' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( ownerRef != 'System_Int16' )
      & ( sharingMode != 'System_Int16' )
      & ( elements != ownerRef )
      & ( 'System_ICloneable' != 'System_IComparable_1___System_String' )
      & ( 'NonNullFieldsAreInitialized' != 'System_SByte' )
      & ( 'System_IntPtr' != 'System_ICloneable' )
      & ( 'System_Char' != 'System_IntPtr' )
      & ( elements != 'ArrayCategoryRef' )
      & ( 'System_Int32' != 'System_IComparable_1___System_String' )
      & ( 'PeerGroupPlaceholder' != 'System_Collections_IEnumerable' )
      & ( ownerRef != 'PeerGroupPlaceholder' )
      & ! [X295: $int,X296: $int,X297: $int] :
        ? [X298: $int] :
          ( ( ( true_1 = x('System_Array',X297) )
            | ( true_1 != x(X298,X297) )
            | ( X297 = X298 ) )
          & ( 'IntArray'(X295,X296) = X298 ) )
      & ( 'System_Boolean' != 'System_SByte' )
      & ( localinv != 'System_Collections_IEnumerable' )
      & ( 'System_Collections_Generic_IEnumerable_1___System_Char' = 'AsInterface'('System_Collections_Generic_IEnumerable_1___System_Char') )
      & ( ownerFrame != 'System_IConvertible' )
      & ( 'System_Char' != 'System_UIntPtr' )
      & ( exposeVersion != 'System_Int16' )
      & ( 'ArrayCategoryRef' != 'System_Collections_IEnumerable' )
      & ( allocated != 'ArrayCategoryNonNullRef' )
      & ( true_1 != 'IsStaticField'(localinv) )
      & ( 'System_Boolean' != 'System_IntPtr' )
      & ( 'System_UInt64' != 'System_IConvertible' )
      & ( inv != 'System_Collections_IEnumerable' )
      & ( ownerFrame != 'System_IComparable' )
      & ( 'System_UInt16' != 'System_Int32' )
      & ( 'ArrayCategoryRef' != 'System_Int16' )
      & ! [X299: $int,X300: $int,X301: $int] :
        ? [X302: $int] :
          ( ( ( true_1 != x(X300,'NonNullRefArray'(X299,X301)) )
            | ( ( X299 != X300 )
              & ( 'NonNullRefArray'(X302,X301) = X300 )
              & ( true_1 = x(X302,X299) ) ) )
          & ( 'ElementType'(X300) = X302 ) )
      & ( elements != 'SharingMode_LockProtected' )
      & ( 'System_IComparable' != 'System_Collections_IEnumerable' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Int16' )
      & ( 'BaseClass'('Factorial') = X1 )
      & ( 'PeerGroupPlaceholder' != 'ArrayCategoryInt' )
      & ( 'System_Int64' != 'System_IConvertible' )
      & ! [X303: $int,X304: $int] :
          ( $less(X303,0)
          | ( x_2($sum(X304,X303),X304) = x_2(X303,X304) )
          | $less(X304,0) )
      & ( ownerRef != 'System_Int64' )
      & ( 'ArrayCategoryRef' != 'System_UInt32' )
      & ( 'System_Object' != 'System_Type' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Int64' )
      & ! [X305: $int,X306: $int] :
          ( ( true_1 != 'IsAllocated'(X306,X305) )
          | ( true_1 != 'IsHeap'(X306) )
          | ( true_1 = 'IsAllocated'(X306,'ElementProxy'(X305,$sum(0,$uminus(1)))) )
          | ( true_1 != x(typeof(X305),'System_Array') ) )
      & ( 'System_Array' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_Boolean' != 'System_Collections_IEnumerable' )
      & ( 'System_Boolean' != 'System_Byte' )
      & ( 'System_UInt32' != stringLiteral0 )
      & ( 'ArrayCategoryRef' != 'System_IEquatable_1___System_String' )
      & ( 'System_Boolean' != 'System_IComparable_1___System_String' )
      & ( true_1 = x('System_Collections_Generic_IEnumerable_1___System_Char','System_Object') )
      & ( 'System_IComparable' != 'Factorial' )
      & ( 'System_IEquatable_1___System_String' = 'AsInterface'('System_IEquatable_1___System_String') )
      & ( sharingMode != 'ArrayCategoryNonNullRef' )
      & ( 'PeerGroupPlaceholder' != 'System_IConvertible' )
      & ( 'System_Byte' != 'System_ICloneable' )
      & ( 'SharingMode_Unshared' != 'System_Int32' )
      & ( inv != 'System_Array' )
      & ! [X307: $int] : ~ $less('Rank'(X307),1)
      & ( sharingMode != 'System_IConvertible' )
      & ( allocated != 'Factorial' )
      & ( 'System_Array' != stringLiteral0 )
      & ( 'System_Int16' != 'System_IComparable_1___System_String' )
      & ( 'SharingMode_Unshared' != 'System_IConvertible' )
      & ( true_1 = 'IsValueType'('System_SByte') )
      & ( true_1 = 'IncludeInMainFrameCondition'(ownerRef) )
      & ( 'ArrayCategoryInt' != 'System_ICloneable' )
      & ( elements != localinv )
      & ( true_1 = 'IncludeInMainFrameCondition'(ownerFrame) )
      & ( 'System_UInt32' != 'System_IComparable_1___System_String' )
      & ( 'System_UIntPtr' != 'System_IComparable' )
      & ( 'SharingMode_LockProtected' != 'System_Boolean' )
      & ( exposeVersion != 'System_UInt16' )
      & ( 'System_String' != 'System_IComparable' )
      & ( 'SharingMode_LockProtected' != 'System_ICloneable' )
      & ( 'ArrayCategoryInt' != 'System_IntPtr' )
      & ( ownerRef != ownerFrame )
      & ( 'SharingMode_LockProtected' != 'System_IntPtr' )
      & ( 'System_Type' != 'System_String' )
      & ( elements != stringLiteral0 )
      & ( 'System_Object' != 'System_UInt64' )
      & ( inv != 'System_Boolean' )
      & ( 'NonNullFieldsAreInitialized' != 'System_UInt16' )
      & ( elements != 'PeerGroupPlaceholder' )
      & ( 'System_Array' != 'System_Boolean' )
      & ( 'System_UInt64' != 'System_IntPtr' )
      & ( true_1 = 'IsNotNull'(stringLiteral0,'System_String') )
      & ( 'System_Int16' != 'System_Int64' )
      & ( exposeVersion != 'System_UInt64' )
      & ( 'System_SByte' != 'System_IComparable_1___System_String' )
      & ! [X308: $int,X309: $int] :
        ? [X310: $int] :
          ( ( true_1 = x(X310,'System_Array') )
          & ( 'IntArray'(X309,X308) = X310 )
          & ( true_1 = x(X310,X310) ) )
      & ( true_1 = 'IsValueType'('System_UInt16') )
      & ( 'ArrayCategoryRef' != 'NonNullFieldsAreInitialized' )
      & ( inv != 'SharingMode_Unshared' )
      & ( elements != 'ArrayCategoryNonNullRef' )
      & ( localinv != 'PeerGroupPlaceholder' )
      & ( 'ArrayCategoryValue' != 'System_UInt64' )
      & ( true_1 = x('System_IComparable','System_IComparable') )
      & ( 'System_Boolean' != 'System_UInt32' )
      & ( inv != 'System_Int16' )
      & ( 'System_Object' != 'System_Byte' )
      & ( 'System_Type' != 'System_UInt16' )
      & ! [X311: $int] :
          ( ( ( true_1 = 'InRange'(X311,'System_Byte') )
            | ~ $less(X311,256)
            | $less(X311,0) )
          & ( ( $less(X311,256)
              & ~ $less(X311,0) )
            | ( true_1 != 'InRange'(X311,'System_Byte') ) ) )
      & ( 'ArrayCategoryInt' != 'System_IComparable' )
      & ( true_1 = 'IsMemberlessType'('System_IComparable') )
      & ( 'System_Array' != 'System_IConvertible' )
      & ( 'System_UIntPtr' != 'System_IComparable_1___System_String' )
      & ! [X312: $int,X313: $int,X314: $int,X315: $int] : ( 'ArrayIndexInvX'('ArrayIndex'(X313,X315,X312,X314)) = X312 )
      & ( $sum(int_m9223372036854775808,1) = $sum(0,$uminus(int_9223372036854775807)) )
      & ( allocated != ownerFrame )
      & ! [X316: $int,X317: $int] :
        ? [X318: $int] :
          ( ( x_2(X316,X317) = X318 )
          & ( $less(X316,0)
            | ( ~ $less(X318,0)
              & $less(X318,X317) )
            | ~ $less(0,X317) ) )
      & ( true_1 = x('System_Collections_Generic_IEnumerable_1___System_Char','System_Collections_Generic_IEnumerable_1___System_Char') )
      & ( sharingMode != 'System_UInt64' )
      & ( elements != 'Factorial' )
      & ! [X319: $int,X320: $int,X321: $int] :
        ? [X322: $int] :
          ( ( 'RefArrayGet'(select2(X319,X320,elements),X321) = X322 )
          & ( ( true_1 = x(typeof(X322),'ElementType'(typeof(X320))) )
            | ( nullObject = X322 )
            | ( true_1 != 'IsHeap'(X319) ) ) )
      & ( 'SharingMode_Unshared' != 'System_Byte' )
      & ! [X323: $int,X324: $int] :
        ? [X325: $int] :
          ( ( true_1 = x(X325,X325) )
          & ( true_1 = x(X325,'System_Array') )
          & ( 'RefArray'(X323,X324) = X325 ) )
      & ( 'SharingMode_LockProtected' != 'System_UInt32' )
      & ( localinv != 'System_IConvertible' )
      & ! [X326: $int,X327: $int,X328: $int] :
          ( ( true_1 != 'IsAllocated'(X326,X328) )
          | ( true_1 = 'IsAllocated'(X326,'RefArrayGet'(X328,X327)) ) )
      & ( inv != 'System_SByte' )
      & ( ownerRef != 'System_Array' )
      & ( 'ArrayCategoryNonNullRef' != 'NonNullFieldsAreInitialized' )
      & ( true_1 != 'IncludedInModifiesStar'(ownerRef) )
      & ( allocated != 'System_IComparable' )
      & ( 'System_Type' != 'System_UIntPtr' )
      & ! [X329: $int,X330: $int] :
        ? [X331: $int] :
          ( ( ~ $less(X329,0)
            | $less(X330,0)
            | ( $less(X331,$sum(0,$uminus(X329)))
              & ~ $less(X331,0) ) )
          & ( x_2(X330,X329) = X331 ) )
      & ( localinv != 'System_UInt32' )
      & $less(int_m9223372036854775808,int_m2147483648)
      & ( 'System_ICloneable' != 'System_IEquatable_1___System_String' )
      & ( 'System_UInt16' != stringLiteral0 )
      & ( allocated != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( ownerFrame != 'System_Char' )
      & ( localinv != 'System_UInt64' )
      & ( 'SharingMode_Unshared' != 'System_ICloneable' )
      & ( inv != 'System_IComparable' )
      & ( 'ArrayCategoryValue' != 'System_ICloneable' )
      & ( elements != 'System_Array' )
      & ( 'System_IComparable' = 'AsInterface'('System_IComparable') )
      & ( 'System_Int16' != stringLiteral0 )
      & ( 'System_Object' != 'NonNullFieldsAreInitialized' )
      & ( inv != 'System_IComparable_1___System_String' )
      & ! [X332: $int] : ~ $less('StringLength'(X332),0)
      & ! [X333: $int,X334: $int,X335: $int] :
          ( ( true_1 != 'IsHeap'(X333) )
          | ( true_1 = 'IsAllocated'(X333,select2(X333,X335,X334)) )
          | ( true_1 != select2(X333,X335,allocated) ) )
      & ( sharingMode != 'System_ICloneable' )
      & ! [X336: $int,X337: $int,X338: $int] :
        ? [X339: $int,X340: $int] :
          ( ( ( true_1 != x(select2(X336,X340,inv),X339) )
            | ( select2(X336,X340,localinv) = 'BaseClass'(X339) )
            | ( true_1 != select2(X336,X338,allocated) )
            | ( true_1 != 'IsHeap'(X336) )
            | ( 'PeerGroupPlaceholder' = X339 )
            | ( 'AsPureObject'(X338) != X338 )
            | ( nullObject = X338 )
            | ( select2(X336,X338,X337) = 'FieldDependsOnFCO'(X338,X337,select2(X336,select2(X336,X338,'FirstConsistentOwner'),exposeVersion)) ) )
          & ( select2(X336,X338,ownerFrame) = X339 )
          & ( select2(X336,X338,ownerRef) = X340 ) )
      & ( ownerFrame != 'System_Array' )
      & ( ownerRef != 'System_String' )
      & ( 'FirstConsistentOwner' != 'System_IConvertible' )
      & ! [X341: $int,X342: $int] :
          ( ( true_1 = select2(X341,X342,allocated) )
          | ( true_1 != 'IsAllocated'(X341,X342) ) )
      & ( 'System_IComparable_1___System_String' != 'System_IComparable' )
      & ( 'ArrayCategoryNonNullRef' != 'System_IConvertible' )
      & ( 'System_Int32' != 'System_IntPtr' )
      & ( sharingMode != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'ArrayCategoryNonNullRef' != 'System_UInt32' )
      & ( 'NonNullFieldsAreInitialized' != stringLiteral0 )
      & ( 'ArrayCategoryInt' != 'System_Byte' )
      & ( 'SharingMode_Unshared' != ownerFrame )
      & ( localinv != 'System_Type' )
      & ( 'SharingMode_Unshared' != 'System_Char' )
      & ( 'SharingMode_Unshared' != ownerRef )
      & ( ownerRef != 'ArrayCategoryValue' )
      & ( 'SharingMode_Unshared' != 'System_UInt32' )
      & ( 'System_Boolean' != 'System_UIntPtr' )
      & ( ownerRef != 'Factorial' )
      & ( true_1 = x('System_Array','System_Object') )
      & ( inv != 'System_Int32' )
      & ( 'ArrayCategoryRef' != 'System_Char' )
      & ( 'SharingMode_LockProtected' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_String' != stringLiteral0 )
      & ( 'System_String' != 'System_Int32' )
      & ( 'System_Boolean' != 'System_Int16' )
      & ( 'System_Int16' != 'System_UInt16' )
      & ( 'ArrayCategoryRef' != 'System_UInt16' )
      & ( 'System_String' != 'System_UInt16' )
      & ( 'System_Boolean' != 'System_ICloneable' )
      & ! [X343: $int,X344: $int,X345: $int,X346: $int] :
          ( ( true_1 != 'IsHeap'(X345) )
          | ( nullObject != select2(X345,X343,'AsNonNullRefField'(X344,X346)) )
          | ( nullObject = X343 )
          | ( ( true_1 != select2(X345,'BeingConstructed','NonNullFieldsAreInitialized') )
            & ( 'BeingConstructed' = X343 ) ) )
      & ( 'System_UInt16' != 'System_IComparable' )
      & ( 'PeerGroupPlaceholder' != 'System_Type' )
      & ( 'PeerGroupPlaceholder' != 'ArrayCategoryNonNullRef' )
      & ! [X347: $int,X348: $int] :
          ( ( 'PeerGroupPlaceholder' = select2(X348,'ClassRepr'(X347),ownerFrame) )
          | ( true_1 != 'IsHeap'(X348) ) )
      & ( exposeVersion != 'System_IComparable' )
      & ( 'System_UInt64' != 'System_ICloneable' )
      & ( ownerRef != 'System_Object' )
      & ( 'System_Object' != 'System_Char' )
      & ( inv != 'FirstConsistentOwner' )
      & ( 'System_UIntPtr' != stringLiteral0 )
      & ( 'System_Int16' != 'System_Collections_IEnumerable' )
      & ! [X349: $int,X350: $int,X351: $int] :
          ( ( ( true_1 = 'System_String_Equals_System_String_System_String'(X351,X350,X349) )
            | ( true_1 != 'StringEquals'(X350,X349) ) )
          & ( ( true_1 = 'StringEquals'(X350,X349) )
            | ( true_1 != 'System_String_Equals_System_String_System_String'(X351,X350,X349) ) )
          & ( ( X349 != X350 )
            | ( true_1 = 'StringEquals'(X350,X349) ) )
          & ( ( true_1 = 'System_String_Equals_System_String_System_String'(X351,X350,X349) )
            | ( true_1 != 'StringEquals'(X349,X350) ) )
          & ( ( true_1 = 'StringEquals'(X349,X350) )
            | ( true_1 != 'System_String_Equals_System_String_System_String'(X351,X350,X349) ) ) )
      & ( 'ArrayCategoryNonNullRef' != 'System_IntPtr' )
      & ( 'SharingMode_LockProtected' != 'ArrayCategoryRef' )
      & ( 'System_Array' != 'System_Int32' )
      & ( 'SharingMode_LockProtected' != 'System_Int32' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Object' )
      & ( inv != 'System_UInt64' )
      & ( 'System_Int16' != 'System_ICloneable' )
      & ( 'FirstConsistentOwner' != 'System_Int64' )
      & ( ownerRef != 'System_IntPtr' )
      & ( inv != 'System_UInt16' )
      & ( 'System_IEquatable_1___System_String' != stringLiteral0 )
      & ( 'System_Boolean' != 'System_UInt16' )
      & ( 'ArrayCategoryInt' != 'NonNullFieldsAreInitialized' )
      & ( elements != 'System_Boolean' )
      & ( elements != 'System_SByte' )
      & ! [X352: $int,X353: $int,X354: $int] :
          ( ( 'ArrayCategoryNonNullRef' = 'ArrayCategory'(X352) )
          | ( true_1 != x(X352,'NonNullRefArray'(X354,X353)) ) )
      & ! [X355: $int,X356: $int] :
          ( ( nullObject = X355 )
          | ( true_1 != x(typeof(X355),'AsImmutable'(X356)) )
          | ( 'BeingConstructed' = X355 )
          | ! [X357: $int] :
            ? [X358: $int] :
              ( ( ( ! [X359: $int] :
                      ( ( X355 = X359 )
                      | ( 'AsOwner'(X355,select2(X357,X359,ownerRef)) != X355 )
                      | ( 'PeerGroupPlaceholder' != select2(X357,X359,ownerFrame) ) )
                  & ( 'PeerGroupPlaceholder' = select2(X357,X355,ownerFrame) )
                  & ( select2(X357,X355,inv) = X358 )
                  & ( 'AsOwner'(X355,select2(X357,X355,ownerRef)) = X355 )
                  & ( select2(X357,X355,localinv) = X358 ) )
                | ( true_1 != 'IsHeap'(X357) ) )
              & ( typeof(X355) = X358 ) ) )
      & ( allocated != exposeVersion )
      & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_IComparable_1___System_String' )
      & ( 'PeerGroupPlaceholder' != 'System_Boolean' )
      & ( 'SharingMode_Unshared' != 'System_Boolean' )
      & ( 'System_UInt32' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_IEquatable_1___System_String' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'SharingMode_LockProtected' != 'System_Array' )
      & ( ownerFrame != 'System_Byte' )
      & ( 'ArrayCategoryRef' != 'System_Object' )
      & ( true_1 = x('Factorial','Factorial') )
      & ( 'System_Byte' != 'System_Int16' )
      & ( 'ArrayCategoryRef' != 'System_Type' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Int32' )
      & ( 'ArrayCategoryValue' != 'System_Int64' )
      & ( true_1 = x('System_IComparable_1___System_String','System_Object') )
      & ! [X360: $int,X361: $int] : ( 'Factorial_recursiveFac_System_Int32'(X360,X361) = 'Factorial_recursiveFac_System_Int32_1'(X361) )
      & ( 'System_Byte' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( ownerFrame != 'System_Boolean' )
      & ( 'SharingMode_Unshared' != 'System_IComparable' )
      & ( 'System_Int32' != 'System_UIntPtr' )
      & ( ownerFrame != 'System_Int64' )
      & ( 'ArrayCategoryNonNullRef' != 'System_Collections_IEnumerable' )
      & ( 'System_UIntPtr' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ! [X362: $int] :
          ( ( ( true_1 = 'InRange'(X362,'System_Int64') )
            | $less(int_9223372036854775807,X362)
            | $less(X362,int_m9223372036854775808) )
          & ( ( ~ $less(int_9223372036854775807,X362)
              & ~ $less(X362,int_m9223372036854775808) )
            | ( true_1 != 'InRange'(X362,'System_Int64') ) ) )
      & ( 'System_UIntPtr' != 'Factorial' )
      & ( 'System_Int64' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_UInt16' != 'Factorial' )
      & ( 'System_UInt32' != 'System_ICloneable' )
      & ( 'System_String' != 'System_UInt32' )
      & ( 'System_Array' != 'System_ICloneable' )
      & ( 'System_Array' != 'System_Object' )
      & ! [X363: $int,X364: $int] : ( 'ElementType'('IntArray'(X364,X363)) = X364 )
      & ( localinv != 'SharingMode_LockProtected' )
      & ! [X365: $int,X366: $int,X367: $int,X368: $int] :
          ( ( true_1 != 'IsHeap'(X368) )
          | ( true_1 = 'Is'(select2(X368,X367,'AsRefField'(X366,X365)),X365) ) )
      & ( localinv != 'FirstConsistentOwner' )
      & ( true_1 = 'IncludedInModifiesStar'(exposeVersion) )
      & ( 'System_Array' != 'System_String' )
      & ( 'System_Byte' != 'System_IConvertible' )
      & ( ownerFrame != stringLiteral0 )
      & ( 'System_Boolean' != 'Factorial' )
      & ( elements != 'System_IConvertible' )
      & ( true_1 = 'IsValueType'('System_UInt32') )
      & ( 'ArrayCategoryRef' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'System_Object' != 'System_ICloneable' )
      & ( 'NonNullFieldsAreInitialized' != 'System_String' )
      & ( 'ArrayCategoryValue' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( inv != 'System_Type' )
      & ( localinv != 'System_IEquatable_1___System_String' )
      & ( inv != 'System_IConvertible' )
      & ! [X369: $int] : ( true_1 = 'IsNotNull'('TypeObject'(X369),'System_Type') )
      & ( 'ArrayCategoryValue' != 'System_Array' )
      & ( 'System_Array' != 'System_IntPtr' )
      & ( 'ArrayCategoryRef' != 'System_Boolean' )
      & ( 'SharingMode_Unshared' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( true_1 = x('System_String','System_ICloneable') )
      & ( 'System_UInt16' != 'System_Collections_IEnumerable' )
      & ( 'ArrayCategoryValue' != 'System_UInt16' )
      & ( 'System_IEquatable_1___System_String' != 'Factorial' )
      & ( 'System_UInt16' != 'System_UInt64' )
      & ! [X370: $int,X371: $int] : ~ $less('DimLength'(X370,X371),0)
      & ( sharingMode != stringLiteral0 )
      & ( 'System_IntPtr' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
      & ( 'NonNullFieldsAreInitialized' != 'System_Collections_IEnumerable' )
      & ( 'System_Byte' != 'System_Collections_IEnumerable' )
      & ( 'System_UIntPtr' != 'System_IConvertible' )
      & ( 'PeerGroupPlaceholder' != 'System_UInt64' )
      & ( 'System_Object' != 'Factorial' )
      & ( sharingMode != 'FirstConsistentOwner' )
      & ! [X372: $int] :
          ( ( true_1 != 'IsValueType'(X372) )
          | ( ! [X373: $int] :
                ( ( true_1 != x(X372,X373) )
                | ( X372 = X373 ) )
            & ! [X374: $int] :
                ( ( X372 = X374 )
                | ( true_1 != x(X374,X372) ) ) ) )
      & ( ownerRef != 'System_Char' )
      & ( 'System_Boolean' != 'System_String' )
      & ( 'ArrayCategoryNonNullRef' != 'Factorial' )
      & ( 'System_ICloneable' != 'Factorial' )
      & ! [X375: $int] :
          ( ( ( true_1 = 'InRange'(X375,'System_UInt64') )
            | $less(int_18446744073709551615,X375)
            | $less(X375,0) )
          & ( ( ~ $less(int_18446744073709551615,X375)
              & ~ $less(X375,0) )
            | ( true_1 != 'InRange'(X375,'System_UInt64') ) ) ) ),
    inference(rectify,[],[f41]) ).

tff(f43,plain,
    ( ( 'ArrayCategoryInt' != 'System_Boolean' )
    & ( 'System_String' != 'System_Int64' )
    & ( true_1 = 'IsMemberlessType'('System_Collections_IEnumerable') )
    & ( true_1 = 'IsImmutable'('System_String') )
    & ( elements != sharingMode )
    & ! [X2: $int,X3: $int,X4: $int] :
        ( ( true_1 != 'IsHeap'(X4) )
        | ( true_1 = 'InRange'('IntArrayGet'(select2(X4,X2,elements),X3),'ElementType'(typeof(X2))) ) )
    & ( inv != sharingMode )
    & ( 'System_Object' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ( 'System_String' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ( exposeVersion != 'FirstConsistentOwner' )
    & ( 'System_Type' != 'System_Char' )
    & ( allocated != 'System_Array' )
    & ! [X5: $int,X6: $int,X7: $int] : ( 'IntArrayGet'('IntArraySet'(X6,X5,X7),X5) = X7 )
    & ( 'PeerGroupPlaceholder' != 'System_IComparable_1___System_String' )
    & ( 'ArrayCategoryValue' != 'System_Int32' )
    & ( 'ArrayCategoryValue' != 'System_Object' )
    & ( localinv != 'System_Byte' )
    & ( 'System_SByte' != 'System_ICloneable' )
    & ( 'SharingMode_Unshared' != stringLiteral0 )
    & ( true_1 != 'IsStaticField'(exposeVersion) )
    & ! [X8: $int,X9: $int,X10: $int] :
        ( ( true_1 = x('NonNullRefArray'(X8,X9),'NonNullRefArray'(X10,X9)) )
        | ( true_1 != x(X8,X10) ) )
    & ( 'System_Int32' != 'System_Char' )
    & ! [X11: $int,X12: $int,X13: $int] : ( 'RefArrayGet'('RefArraySet'(X11,X12,X13),X12) = X13 )
    & ( sharingMode != ownerFrame )
    & ( 'NonNullFieldsAreInitialized' != 'System_ICloneable' )
    & ( localinv != 'Factorial' )
    & ( ownerFrame != 'FirstConsistentOwner' )
    & ( 'System_SByte' != 'System_Int32' )
    & ( inv != 'ArrayCategoryInt' )
    & ( 'System_Type' != 'System_IEquatable_1___System_String' )
    & ! [X14: $int,X15: $int,X16: $int,X17: $int] :
        ( ( sK2(X14,X15,X16,X17) = select2(X16,X17,'AsElementsPeerField'(X14,X15)) )
        & ( 'ElementProxy'(sK2(X14,X15,X16,X17),X15) = sK3(X14,X15,X16,X17) )
        & ( ( nullObject = sK2(X14,X15,X16,X17) )
          | ( true_1 != 'IsHeap'(X16) )
          | ( ( select2(X16,sK3(X14,X15,X16,X17),ownerRef) = select2(X16,X17,ownerRef) )
            & ( select2(X16,X17,ownerFrame) = select2(X16,sK3(X14,X15,X16,X17),ownerFrame) ) ) ) )
    & ! [X20: $int,X21: $int] :
        ( ( ( ~ $less(sK4(X20,X21),0)
            & ~ $less($sum(X20,X21),sK4(X20,X21)) )
          | $less(X20,0)
          | $less(X21,0) )
        & ( sK4(X20,X21) = or_1(X20,X21) ) )
    & ( 'FirstConsistentOwner' != 'System_UInt16' )
    & ( 'System_UInt64' != 'System_Collections_IEnumerable' )
    & ( sharingMode != 'System_Type' )
    & ( 'FirstConsistentOwner' != 'System_Int16' )
    & ( sharingMode != 'System_IComparable_1___System_String' )
    & ( 'SharingMode_LockProtected' != 'ArrayCategoryInt' )
    & ( 'SharingMode_Unshared' != 'System_SByte' )
    & ( true_1 = 'IsValueType'('System_UIntPtr') )
    & ( allocated != localinv )
    & ! [X23: $int,X24: $int] :
        ( ( ( ( true_1 = 'Is'(X24,X23) )
            & ( nullObject != X24 ) )
          | ( true_1 != 'IsNotNull'(X24,X23) ) )
        & ( ( true_1 = 'IsNotNull'(X24,X23) )
          | ( true_1 != 'Is'(X24,X23) )
          | ( nullObject = X24 ) ) )
    & ( 'SharingMode_Unshared' != 'System_Collections_IEnumerable' )
    & ( 'ArrayCategoryValue' != 'ArrayCategoryInt' )
    & ( 'System_ICloneable' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ( 'System_Type' != 'System_UInt64' )
    & ( sharingMode != 'System_UIntPtr' )
    & ( 'ArrayCategoryInt' != 'ArrayCategoryRef' )
    & ( 'System_String' = 'AsDirectSubClass'('System_String',sK0) )
    & ( 'ArrayCategoryValue' != 'NonNullFieldsAreInitialized' )
    & ( true_1 = x('System_IEquatable_1___System_String','System_IEquatable_1___System_String') )
    & ( 'System_Type' != 'System_UInt32' )
    & ( 'NonNullFieldsAreInitialized' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ( true_1 = x('System_Collections_Generic_IEnumerable_1___System_Char','System_Collections_IEnumerable') )
    & ! [X25: $int] :
        ( ( true_1 != x(X25,'System_String') )
        | ( 'System_String' = X25 ) )
    & ( ownerFrame != 'System_IComparable_1___System_String' )
    & ( 'System_Object' != 'System_Int32' )
    & ( 'System_Object' != 'FirstConsistentOwner' )
    & ( 'PeerGroupPlaceholder' != 'System_Object' )
    & ( exposeVersion != stringLiteral0 )
    & ( 'System_UInt64' != 'System_IComparable_1___System_String' )
    & ( allocated != 'System_Object' )
    & ( 'System_Type' != 'FirstConsistentOwner' )
    & ( exposeVersion != 'SharingMode_LockProtected' )
    & ! [X26: $int,X27: $int,X28: $int,X29: $int] :
        ( ( true_1 != 'IsHeap'(X27) )
        | ( true_1 = 'InRange'(select2(X27,X29,'AsRangeField'(X28,X26)),X26) ) )
    & ( 'System_Type' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ( 'ArrayCategoryValue' != 'System_Int16' )
    & ( allocated != 'FirstConsistentOwner' )
    & ! [X30: $int] :
        ( ( ( $less(X30,65536)
            & ~ $less(X30,0) )
          | ( true_1 != 'InRange'(X30,'System_Char') ) )
        & ( ( true_1 = 'InRange'(X30,'System_Char') )
          | ~ $less(X30,65536)
          | $less(X30,0) ) )
    & ( 'System_Byte' != 'System_IntPtr' )
    & ! [X31: $int] :
        ( ( ( ~ $less(int_2147483647,X31)
            & ~ $less(X31,int_m2147483648) )
          | ( true_1 != 'InRange'(X31,'System_Int32') ) )
        & ( ( true_1 = 'InRange'(X31,'System_Int32') )
          | $less(int_2147483647,X31)
          | $less(X31,int_m2147483648) ) )
    & ( 'System_UIntPtr' != 'System_IEquatable_1___System_String' )
    & ! [X32: $int,X33: $int] :
        ( ( x_2(X33,X32) = sK5(X32,X33) )
        & ( $less(0,X33)
          | ~ $less(0,X32)
          | ( ~ $less(0,sK5(X32,X33))
            & $less($sum(0,$uminus(X32)),sK5(X32,X33)) ) ) )
    & ( 'System_IEquatable_1___System_String' != 'System_Collections_IEnumerable' )
    & ( 'System_UInt16' != 'System_IConvertible' )
    & ! [X35: $int,X36: $int] : ( $sum('DimLength'(X35,X36),$uminus(1)) = 'UBound'(X35,X36) )
    & ( 'System_Int64' != stringLiteral0 )
    & ( 'NonNullFieldsAreInitialized' != 'Factorial' )
    & ( 'ArrayCategoryNonNullRef' != 'System_ICloneable' )
    & ( 'ArrayCategoryRef' != 'System_SByte' )
    & ( exposeVersion != 'SharingMode_Unshared' )
    & ( 'ArrayCategoryInt' != 'System_IEquatable_1___System_String' )
    & ( 'System_Int32' != 'System_ICloneable' )
    & ( ownerRef != 'NonNullFieldsAreInitialized' )
    & ( exposeVersion != 'System_Int32' )
    & ( 'ArrayCategoryRef' != 'System_IConvertible' )
    & ( 'BaseClass'('System_String') = sK0 )
    & ! [X37: $int,X38: $int] :
        ( ( ( nullObject != 'BoxTester'(X37,X38) )
          | ( 'UnboxedType'(X37) != X38 ) )
        & ( ( 'UnboxedType'(X37) = X38 )
          | ( nullObject = 'BoxTester'(X37,X38) ) ) )
    & ( 'PeerGroupPlaceholder' != 'System_Array' )
    & $less(int_m2147483648,$sum(0,$uminus(100000)))
    & ( 'System_IntPtr' != stringLiteral0 )
    & ! [X39: $int,X40: $int,X41: $int] :
        ( ( 'IfThenElse'(X41,X39,X40) = X39 )
        | ( true_1 != X41 ) )
    & ( ownerRef != 'System_ICloneable' )
    & ( 'ArrayCategoryInt' != 'System_Collections_IEnumerable' )
    & ( 'System_Type' != stringLiteral0 )
    & ( 'System_Byte' != 'System_IEquatable_1___System_String' )
    & ( 'ArrayCategoryValue' != 'ArrayCategoryNonNullRef' )
    & ( true_1 != 'IsImmutable'('System_Object') )
    & ( 'System_SByte' != stringLiteral0 )
    & ( ownerFrame != 'ArrayCategoryNonNullRef' )
    & ( elements != 'System_IEquatable_1___System_String' )
    & ( localinv != ownerRef )
    & ( localinv != exposeVersion )
    & ( 'ArrayCategoryRef' != 'System_Int64' )
    & ( 'System_Collections_IEnumerable' = 'AsInterface'('System_Collections_IEnumerable') )
    & ! [X42: $int,X43: $int,X44: $int] :
        ( ( 'ElementType'(X44) = sK6(X42,X43,X44) )
        & ( ( true_1 = x('System_Array',X44) )
          | ( true_1 != x('NonNullRefArray'(X43,X42),X44) )
          | ( ( 'NonNullRefArray'(sK6(X42,X43,X44),X42) = X44 )
            & ( true_1 = x(X43,sK6(X42,X43,X44)) ) ) ) )
    & ( true_1 = 'IsMemberlessType'('System_IConvertible') )
    & ( 'SharingMode_LockProtected' != 'System_Char' )
    & ( 'SharingMode_LockProtected' != 'System_IComparable' )
    & ( true_1 = x('System_Collections_IEnumerable','System_Object') )
    & ( 'PeerGroupPlaceholder' != 'System_Char' )
    & ! [X46: $int] : ( shr(X46,0) = X46 )
    & ( localinv != 'ArrayCategoryNonNullRef' )
    & ( localinv != 'System_Array' )
    & ( 'System_ICloneable' = 'AsInterface'('System_ICloneable') )
    & ( 'ArrayCategoryRef' != 'ArrayCategoryNonNullRef' )
    & ( 'System_Byte' != stringLiteral0 )
    & ( true_1 = x('System_IComparable_1___System_String','System_IComparable_1___System_String') )
    & ( 'System_Int64' != 'System_UIntPtr' )
    & ( allocated != 'System_UInt16' )
    & ! [X47: $int,X48: $int,X49: $int] :
        ( ( true_1 != 'IsAllocated'(X48,X49) )
        | ( true_1 = 'IsAllocated'(X48,'StructGet'(X49,X47)) ) )
    & ( 'SharingMode_LockProtected' != 'System_IComparable_1___System_String' )
    & ( 'ArrayCategoryValue' != 'System_Type' )
    & ( elements != 'System_UInt16' )
    & ( 'PeerGroupPlaceholder' != 'System_SByte' )
    & ( ownerRef != 'ArrayCategoryInt' )
    & ( allocated != 'SharingMode_Unshared' )
    & ( 'System_Int16' != 'System_IntPtr' )
    & ( 'PeerGroupPlaceholder' != 'NonNullFieldsAreInitialized' )
    & ( 'PeerGroupPlaceholder' != 'ArrayCategoryRef' )
    & ( ownerFrame != 'NonNullFieldsAreInitialized' )
    & ( ownerRef != stringLiteral0 )
    & ( exposeVersion != 'System_SByte' )
    & ( inv != exposeVersion )
    & ( 'System_IntPtr' != 'System_IConvertible' )
    & ( 'ArrayCategoryInt' != 'System_Char' )
    & ( 'ArrayCategoryNonNullRef' != 'System_UIntPtr' )
    & ( inv != stringLiteral0 )
    & ( allocated != sharingMode )
    & ( ownerFrame != 'ArrayCategoryRef' )
    & ( true_1 = 'IncludedInModifiesStar'(elements) )
    & ! [X50: $int,X51: $int,X52: $int] :
        ( ( ( true_1 = 'System_String_Equals_System_String_System_String'(X50,X52,X51) )
          | ( true_1 != 'System_String_Equals_System_String'(X50,X52,X51) ) )
        & ( ( true_1 = 'System_String_Equals_System_String'(X50,X52,X51) )
          | ( true_1 != 'System_String_Equals_System_String_System_String'(X50,X52,X51) ) ) )
    & ( 'ArrayCategoryNonNullRef' != 'System_IEquatable_1___System_String' )
    & ( 'PeerGroupPlaceholder' != 'System_Int64' )
    & ( elements != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ( 'System_Array' != 'System_UInt64' )
    & ( 'System_Type' != 'System_Int64' )
    & ( exposeVersion != 'System_UIntPtr' )
    & ( ownerRef != 'System_UInt64' )
    & ( 'System_Type' != 'System_ICloneable' )
    & ( 'System_Byte' != 'System_Char' )
    & ( 'SharingMode_Unshared' != 'System_Object' )
    & ( inv != 'PeerGroupPlaceholder' )
    & ( sharingMode != 'System_Collections_IEnumerable' )
    & ( ownerRef != 'ArrayCategoryRef' )
    & ( 'NonNullFieldsAreInitialized' != 'System_IntPtr' )
    & ( 'System_UInt16' != 'System_UIntPtr' )
    & ! [X53: $int,X54: $int,X55: $int] :
        ( ( 'ElementType'(X55) = sK7(X53,X54,X55) )
        & ( ( true_1 = x('System_Array',X55) )
          | ( ( 'RefArray'(sK7(X53,X54,X55),X53) = X55 )
            & ( true_1 = x(X54,sK7(X53,X54,X55)) ) )
          | ( true_1 != x('RefArray'(X54,X53),X55) ) ) )
    & ( exposeVersion != 'System_Array' )
    & ( ownerRef != 'System_IComparable_1___System_String' )
    & ( elements != 'NonNullFieldsAreInitialized' )
    & ( 'System_UInt32' != 'System_UInt64' )
    & ( ownerFrame != 'System_Type' )
    & ( exposeVersion != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & $less(int_2147483647,int_4294967295)
    & ( inv != 'System_Object' )
    & ( allocated != 'System_Int32' )
    & ( 'System_Byte' != 'System_UIntPtr' )
    & ( allocated != 'System_IEquatable_1___System_String' )
    & ( 'System_String' != 'System_Byte' )
    & ( 'System_Type' != 'NonNullFieldsAreInitialized' )
    & ( 'SharingMode_Unshared' != 'System_Array' )
    & ( 'ArrayCategoryRef' != 'System_UInt64' )
    & ( 'System_Char' != stringLiteral0 )
    & ( 'SharingMode_LockProtected' != 'System_Byte' )
    & ( 'System_IntPtr' != 'Factorial' )
    & ! [X57: $int] :
        ( ( 'DimLength'(X57,0) = 'Length'(X57) )
        | ( 1 != 'Rank'(X57) ) )
    & ! [X58: $int,X59: $int] :
        ( ( true_1 != 'Is'(X58,X59) )
        | ( 'As'(X58,X59) = X58 ) )
    & ( 'FirstConsistentOwner' != 'System_Char' )
    & ( 'ArrayCategoryNonNullRef' != stringLiteral0 )
    & ( 'System_Array' != 'System_Collections_IEnumerable' )
    & ! [X60: $int,X61: $int,X62: $int] :
        ( ( ( true_1 != x(typeof(X60),'System_Array') )
          | ( nullObject = sK9(X60,X61,X62) )
          | ( ( select2(X61,sK9(X60,X61,X62),ownerRef) = select2(X61,sK8(X60,X61,X62),ownerRef) )
            & ( select2(X61,sK9(X60,X61,X62),ownerFrame) = select2(X61,sK8(X60,X61,X62),ownerFrame) ) )
          | ( true_1 != 'IsHeap'(X61) )
          | ( true_1 = 'IsImmutable'(typeof(sK9(X60,X61,X62))) ) )
        & ( 'ElementProxy'(X60,$sum(0,$uminus(1))) = sK8(X60,X61,X62) )
        & ( 'RefArrayGet'(select2(X61,X60,elements),X62) = sK9(X60,X61,X62) ) )
    & ( 'PeerGroupPlaceholder' != 'System_IEquatable_1___System_String' )
    & ( elements != 'System_IComparable' )
    & ( 'System_Char' != 'System_IEquatable_1___System_String' )
    & ( exposeVersion != 'ArrayCategoryInt' )
    & ( 'System_Byte' != 'Factorial' )
    & ( 'System_SByte' != 'System_UInt16' )
    & ( allocated != 'ArrayCategoryRef' )
    & ( 'System_Int32' != 'System_IEquatable_1___System_String' )
    & ( allocated != 'NonNullFieldsAreInitialized' )
    & ( 'FirstConsistentOwner' != stringLiteral0 )
    & ( true_1 != 'IsStaticField'(inv) )
    & ( exposeVersion != 'ArrayCategoryValue' )
    & ( exposeVersion != 'System_Object' )
    & ( 'System_Int32' != stringLiteral0 )
    & ( 'ArrayCategoryValue' != 'System_IConvertible' )
    & ( 'ArrayCategoryNonNullRef' != 'System_Boolean' )
    & ( ownerFrame != 'System_IEquatable_1___System_String' )
    & ( 'ArrayCategoryRef' != 'System_IntPtr' )
    & ( allocated != 'System_Collections_IEnumerable' )
    & ( 'System_SByte' != 'System_IConvertible' )
    & ( 'System_SByte' != 'System_IComparable' )
    & ( sharingMode != 'System_Int64' )
    & ( 'System_SByte' != 'System_Collections_IEnumerable' )
    & ( 'ArrayCategoryValue' != 'System_IComparable' )
    & ( 'System_Object' = sK1 )
    & ( true_1 = x('System_String','System_IComparable_1___System_String') )
    & ! [X65: $int,X66: $int] :
        ( ( typeof(X65) = sK12(X65,X66) )
        & ( sK11(X65,X66) = select2(X66,X65,ownerRef) )
        & ( select2(X66,X65,ownerFrame) = sK10(X65,X66) )
        & ( ( true_1 != 'IsHeap'(X66) )
          | ( ( sK12(X65,X66) = select2(X66,X65,localinv) )
            & ( select2(X66,X65,inv) = sK12(X65,X66) ) )
          | ( true_1 != x(select2(X66,sK11(X65,X66),inv),sK10(X65,X66)) )
          | ( 'PeerGroupPlaceholder' = sK10(X65,X66) )
          | ( 'BaseClass'(sK10(X65,X66)) = select2(X66,sK11(X65,X66),localinv) ) ) )
    & ( elements != 'System_UInt64' )
    & ! [X70: $int,X71: $int,X72: $int] : ( 'ValueArrayGet'('ValueArraySet'(X72,X70,X71),X70) = X71 )
    & ( 'System_UInt64' != 'Factorial' )
    & ( 'System_Boolean' != 'FirstConsistentOwner' )
    & ( sharingMode != 'System_Char' )
    & ( 'PeerGroupPlaceholder' != 'System_Int32' )
    & ( 'SharingMode_Unshared' != 'System_Int16' )
    & ( 'System_IComparable_1___System_String' != stringLiteral0 )
    & ( sharingMode != 'SharingMode_Unshared' )
    & ( inv != 'SharingMode_LockProtected' )
    & ( 'FirstConsistentOwner' != 'System_Collections_IEnumerable' )
    & ( 'System_Int32' != 'System_IConvertible' )
    & ! [X73: $int,X74: $int,X75: $int] :
        ( ( 'ArrayCategoryValue' = 'ArrayCategory'(X75) )
        | ( true_1 != x(X75,'ValueArray'(X74,X73)) ) )
    & ( 'PeerGroupPlaceholder' != 'System_IComparable' )
    & ( 'System_UInt16' != 'System_UInt32' )
    & ( 'System_Type' != 'System_Byte' )
    & ( 'System_Boolean' != 'NonNullFieldsAreInitialized' )
    & ( ownerFrame != 'PeerGroupPlaceholder' )
    & ( 'System_Boolean' != 'System_UInt64' )
    & ( 'System_UInt16' != 'System_ICloneable' )
    & ! [X76: $int,X77: $int] :
        ( ( ( true_1 = x(typeof(X77),X76) )
          | ( nullObject = X77 )
          | ( true_1 != 'Is'(X77,X76) ) )
        & ( ( true_1 = 'Is'(X77,X76) )
          | ( ( true_1 != x(typeof(X77),X76) )
            & ( nullObject != X77 ) ) ) )
    & ( 'System_SByte' != 'Factorial' )
    & ( 'System_Object' = 'DeclType'(elements) )
    & ( ownerRef != 'System_IEquatable_1___System_String' )
    & ( 'Factorial' != stringLiteral0 )
    & ! [X78: $int,X79: $int,X80: $int,X81: $int] : ( 'ArrayIndexInvY'('ArrayIndex'(X79,X81,X78,X80)) = X80 )
    & ( 'System_IConvertible' != 'Factorial' )
    & ! [X82: $int,X83: $int,X84: $int] : ( 'StructGet'('StructSet'(X82,X84,X83),X84) = X83 )
    & ( 'System_Boolean' != 'System_Int64' )
    & ( 'FirstConsistentOwner' != 'System_Byte' )
    & ( allocated != 'System_UInt64' )
    & ( 'FirstConsistentOwner' != 'System_IntPtr' )
    & ( elements != 'System_Object' )
    & ( 'System_UInt16' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ( 'System_ICloneable' != 'System_IComparable' )
    & ( 'NonNullFieldsAreInitialized' != 'System_IEquatable_1___System_String' )
    & ( 'System_Char' != 'System_Collections_IEnumerable' )
    & ( localinv != 'SharingMode_Unshared' )
    & ( 'PeerGroupPlaceholder' != 'System_UIntPtr' )
    & ! [X85: $int,X86: $int,X87: $int] :
        ( ( true_1 = x('RefArray'(X87,X85),'RefArray'(X86,X85)) )
        | ( true_1 != x(X87,X86) ) )
    & ! [X88: $int,X89: $int] :
        ( ( true_1 = x(sK13(X88,X89),sK13(X88,X89)) )
        & ( true_1 = x(sK13(X88,X89),'System_Array') )
        & ( sK13(X88,X89) = 'ValueArray'(X89,X88) ) )
    & ( elements != 'System_Collections_IEnumerable' )
    & ( 'System_SByte' != 'System_UInt32' )
    & ( sharingMode != 'PeerGroupPlaceholder' )
    & ! [X91: $int] :
        ( ~ $less(int_2147483647,sK14(X91))
        & ( 'Length'(X91) = sK14(X91) )
        & ~ $less(sK14(X91),0) )
    & ( 'System_ICloneable' != stringLiteral0 )
    & ( true_1 = x('System_String','System_Collections_Generic_IEnumerable_1___System_Char') )
    & ( 'System_String' != 'System_ICloneable' )
    & ( 'NonNullFieldsAreInitialized' != 'System_IConvertible' )
    & ( exposeVersion != 'System_Int64' )
    & ( ownerFrame != 'System_UInt64' )
    & ( exposeVersion != 'System_Boolean' )
    & ( sharingMode != 'System_Int32' )
    & ! [X93: $int,X94: $int] :
        ( ( sK15(X93,X94) = typeof(X93) )
        & ( ( nullObject = X93 )
          | ( ( sK15(X93,X94) = select2(X94,X93,localinv) )
            & ( select2(X94,X93,inv) = sK15(X93,X94) ) )
          | ( true_1 != 'IsHeap'(X94) )
          | ( true_1 != x(sK15(X93,X94),'System_Array') ) ) )
    & ( 'System_String' != 'System_IComparable_1___System_String' )
    & ( 'System_Object' != 'System_String' )
    & ! [X96: $int,X97: $int,X98: $int,X99: $int] :
        ( ( X97 = X98 )
        | ( 'ValueArrayGet'(X96,X98) = 'ValueArrayGet'('ValueArraySet'(X96,X97,X99),X98) ) )
    & ! [X100: $int,X101: $int] :
        ( ( x_2($sum(X100,X101),X101) = x_2(X100,X101) )
        | $less(X101,0)
        | $less(X100,0) )
    & ( 'ArrayCategoryValue' != 'System_Byte' )
    & ( 'System_Byte' != 'System_UInt32' )
    & ( 'System_Type' != 'System_IComparable_1___System_String' )
    & ( 'System_Object' != 'System_IComparable_1___System_String' )
    & ( 'ArrayCategoryInt' != 'System_UInt32' )
    & ( true_1 = x('System_String','System_Collections_IEnumerable') )
    & ( 'SharingMode_Unshared' != 'ArrayCategoryValue' )
    & ( elements != 'System_Char' )
    & ( inv != 'System_UIntPtr' )
    & ( 'System_Int16' != 'System_Int32' )
    & ( 'System_Boolean' != 'System_Char' )
    & ! [X102: $int,X103: $int,X104: $int] :
        ( ( 'ArrayCategoryInt' = 'ArrayCategory'(X102) )
        | ( true_1 != x(X102,'IntArray'(X104,X103)) ) )
    & ( 'ArrayCategoryNonNullRef' != 'System_SByte' )
    & ! [X105: $int] : ( 'ClassReprInv'('ClassRepr'(X105)) = X105 )
    & ( 'ArrayCategoryInt' != 'System_Array' )
    & ! [X106: $int,X107: $int,X108: $int] :
        ( ( nullObject = X107 )
        | ( 'Rank'(X107) = X106 )
        | ( true_1 != x(typeof(X107),'IntArray'(X108,X106)) ) )
    & ( elements != 'System_Int16' )
    & ! [X109: $int,X110: $int] :
        ( ( ~ $less(X110,0)
          | $less(0,X109)
          | ( ~ $less(0,sK16(X109,X110))
            & $less(X110,sK16(X109,X110)) ) )
        & ( x_2(X109,X110) = sK16(X109,X110) ) )
    & ( 'System_Object' != 'System_Collections_IEnumerable' )
    & ( ownerFrame != 'System_Object' )
    & ( 'ArrayCategoryInt' != stringLiteral0 )
    & ( inv != 'System_ICloneable' )
    & ( 'FirstConsistentOwner' != 'System_UInt32' )
    & ! [X112: $int,X113: $int] : ( 'ElementType'('RefArray'(X112,X113)) = X112 )
    & ( 'System_Collections_IEnumerable' != stringLiteral0 )
    & ( allocated != 'System_IComparable_1___System_String' )
    & ( ownerRef != 'System_Byte' )
    & ( 'System_Object' != 'System_UInt16' )
    & ( 'ArrayCategoryRef' != 'System_IComparable' )
    & ( true_1 = 'IsMemberlessType'('System_IComparable_1___System_String') )
    & ( allocated != 'System_Char' )
    & ( localinv != 'System_UInt16' )
    & ( 'System_Int16' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ( allocated != 'System_Boolean' )
    & ( 'System_Array' != 'System_Byte' )
    & ! [X114: $int,X115: $int,X116: $int,X117: $int] :
        ( ( X114 = X116 )
        | ( 'RefArrayGet'('RefArraySet'(X115,X114,X117),X116) = 'RefArrayGet'(X115,X116) ) )
    & ( elements != 'System_ICloneable' )
    & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != stringLiteral0 )
    & ( exposeVersion != 'ArrayCategoryNonNullRef' )
    & ( true_1 = x('System_ICloneable','System_ICloneable') )
    & ! [X118: $int] :
        ( ( ( ~ $less(X118,0)
            & ~ $less(int_4294967295,X118) )
          | ( true_1 != 'InRange'(X118,'System_UInt32') ) )
        & ( ( true_1 = 'InRange'(X118,'System_UInt32') )
          | $less(X118,0)
          | $less(int_4294967295,X118) ) )
    & ( exposeVersion != 'System_Type' )
    & ( 'System_UInt16' != 'System_IComparable_1___System_String' )
    & ( 'ArrayCategoryNonNullRef' != 'System_Int32' )
    & ( sharingMode != 'Factorial' )
    & ( 'System_Type' != 'System_IConvertible' )
    & ( 'Factorial' = 'AsDirectSubClass'('Factorial',sK1) )
    & $less(int_4294967295,int_9223372036854775807)
    & ( allocated != inv )
    & ( true_1 = x('System_IConvertible','System_IConvertible') )
    & ( 'System_UInt32' != 'System_Int64' )
    & ( 'ArrayCategoryInt' != 'ArrayCategoryNonNullRef' )
    & ! [X119: $int,X120: $int] :
        ( ( nullObject = 'As'(X120,X119) )
        | ( true_1 = 'Is'(X120,X119) ) )
    & ( 'System_Int64' != 'System_Collections_IEnumerable' )
    & ! [X121: $int,X122: $int,X123: $int,X124: $int] :
        ( ( sK17(X121,X122,X123,X124) = 'Box'(X123,sK17(X121,X122,X123,X124)) )
        & ( 'UnboxedType'(sK17(X121,X122,X123,X124)) = X121 )
        & ( sK17(X121,X122,X123,X124) = 'BoxFunc'(X123,X121,X122,X124) ) )
    & ( 'System_Char' != 'System_ICloneable' )
    & ( 'System_UInt32' != 'System_Collections_IEnumerable' )
    & ( 'NonNullFieldsAreInitialized' != 'System_Byte' )
    & ( allocated != 'SharingMode_LockProtected' )
    & ( 'System_SByte' != 'System_UInt64' )
    & ( 'SharingMode_LockProtected' != 'System_UIntPtr' )
    & ( exposeVersion != 'System_IComparable_1___System_String' )
    & ( 'System_UIntPtr' != 'System_IntPtr' )
    & ! [X126: $int,X127: $int,X128: $int] :
        ( $less(X128,2)
        | ~ $less(X126,X127)
        | ( x_2(X126,X128) != x_2(X127,X128) )
        | ~ $less(X127,$sum(X126,X128)) )
    & ( 'System_Byte' != 'System_UInt64' )
    & ( 'System_Array' != 'System_IComparable_1___System_String' )
    & ( 'System_Boolean' != 'System_Int32' )
    & ( 'System_UInt32' != 'System_IEquatable_1___System_String' )
    & ( allocated != 'System_UIntPtr' )
    & ( allocated != 'System_Int64' )
    & ( exposeVersion != 'System_IConvertible' )
    & ( exposeVersion != 'Factorial' )
    & ( true_1 = x('System_Collections_IEnumerable','System_Collections_IEnumerable') )
    & ( 'System_UInt64' != 'System_Char' )
    & ! [X129: $int,X130: $int,X131: $int,X132: $int,X133: $int] :
        ( ( true_1 != 'IsHeap'(X133) )
        | ( nullObject != 'RefArrayGet'(select2(X133,X131,elements),X129) )
        | ( true_1 != x(typeof(X131),'NonNullRefArray'(X130,X132)) ) )
    & ( 'System_String' != 'System_UIntPtr' )
    & ( 'System_UInt32' != 'Factorial' )
    & ( sharingMode != 'System_String' )
    & ! [X134: $int,X135: $int,X136: $int] :
        ( ( true_1 != x(X135,'AsDirectSubClass'(X134,X136)) )
        | ( 'OneClassDown'(X135,X136) = X134 ) )
    & ( exposeVersion != 'System_Collections_IEnumerable' )
    & ( 'SharingMode_LockProtected' != 'System_Int16' )
    & ( 'System_Int32' != 'System_Int64' )
    & ( 'System_Array' != 'System_IComparable' )
    & ( exposeVersion != 'System_IEquatable_1___System_String' )
    & ( 'System_IntPtr' != 'System_IComparable_1___System_String' )
    & ( 'ArrayCategoryRef' != 'System_Array' )
    & ( true_1 = 'IncludeInMainFrameCondition'(allocated) )
    & ( 'PeerGroupPlaceholder' != 'System_UInt32' )
    & ( 'System_Char' != 'System_IComparable_1___System_String' )
    & ( 'System_Object' = 'DeclType'(exposeVersion) )
    & ( inv != 'System_String' )
    & ( inv != 'System_IEquatable_1___System_String' )
    & ( true_1 != 'IncludeInMainFrameCondition'(inv) )
    & ( 'System_IComparable_1___System_String' != 'System_Collections_IEnumerable' )
    & ( 'FirstConsistentOwner' != 'System_UIntPtr' )
    & ( 'SharingMode_LockProtected' != 'System_String' )
    & ( 'SharingMode_LockProtected' != ownerFrame )
    & ( 'System_ICloneable' != 'System_Collections_IEnumerable' )
    & ( exposeVersion != 'System_ICloneable' )
    & ( inv != localinv )
    & ( true_1 = x('System_IEquatable_1___System_String','System_Object') )
    & ( 'ArrayCategoryNonNullRef' != 'System_Int64' )
    & ( localinv != 'System_UIntPtr' )
    & ( localinv != 'System_Int32' )
    & ! [X137: $int,X138: $int,X139: $int] :
        ( ( ( true_1 != x(X139,sK18(X137,X138,X139)) )
          | ( sK18(X137,X138,X139) = X139 ) )
        & ( sK18(X137,X138,X139) = 'IntArray'(X138,X137) ) )
    & ( 'System_UInt16' != 'System_Int64' )
    & ( 'System_SByte' != 'System_Char' )
    & $less(100000,int_2147483647)
    & ( ownerRef != 'System_UIntPtr' )
    & ( true_1 != 'IncludeInMainFrameCondition'(localinv) )
    & ( 'System_Array' != 'NonNullFieldsAreInitialized' )
    & ( 'PeerGroupPlaceholder' != 'ArrayCategoryValue' )
    & ( 'System_Array' != 'System_UInt16' )
    & ( 'PeerGroupPlaceholder' != 'Factorial' )
    & ( 'ArrayCategoryValue' != 'System_UIntPtr' )
    & ( localinv != 'ArrayCategoryRef' )
    & ! [X141: $int,X142: $int] :
        ( ( $less(X141,0)
          & $less(X142,0) )
        | ~ $less(and_1(X142,X141),0) )
    & ( 'System_String' != 'System_UInt64' )
    & ( true_1 = 'IsMemberlessType'('System_IEquatable_1___System_String') )
    & ! [X143: $int,X144: $int] : ( 0 = 'LBound'(X144,X143) )
    & ( ownerFrame != 'System_UIntPtr' )
    & ( elements != 'System_UInt32' )
    & ( 'System_Boolean' != 'System_IEquatable_1___System_String' )
    & ! [X145: $int,X146: $int] : ( 'System_Object' = typeof('ElementProxyStruct'(X146,X145)) )
    & ( ownerRef != 'System_Collections_IEnumerable' )
    & ( 'PeerGroupPlaceholder' != 'System_ICloneable' )
    & ( ownerRef != 'System_SByte' )
    & ( true_1 = 'IsValueType'('System_Boolean') )
    & ! [X147: $int,X148: $int] :
        ( $less(X148,1)
        | ( x_1(shr(X147,$sum(X148,$uminus(1))),2) = shr(X147,X148) ) )
    & ( ownerFrame != 'Factorial' )
    & ( elements != 'System_UIntPtr' )
    & ( exposeVersion != 'System_IntPtr' )
    & ( allocated != ownerRef )
    & ( 'System_Char' != 'System_IComparable' )
    & ! [X149: $int,X150: $int,X151: $int,X152: $int] :
        ( ( 'BoxFunc'(X150,X149,X151,X152) = X150 )
        | ( true_1 = 'IsValueType'('UnboxedType'(X150)) ) )
    & ( true_1 != 'IsStaticField'(allocated) )
    & ( 'System_IntPtr' != 'System_IComparable' )
    & ( 'FirstConsistentOwner' != 'System_IComparable_1___System_String' )
    & ( sharingMode != 'System_Object' )
    & ( true_1 = x('System_String','System_String') )
    & ( sharingMode != 'System_SByte' )
    & ( 'System_Byte' != 'System_Int32' )
    & ( 'SharingMode_Unshared' != 'System_Int64' )
    & ( true_1 != 'IsStaticField'(elements) )
    & ( true_1 = 'IsValueType'('System_Byte') )
    & ( allocated != 'PeerGroupPlaceholder' )
    & ( 'ArrayCategoryInt' != 'System_UInt16' )
    & ( 'System_Object' != 'System_IComparable' )
    & ( 'NonNullFieldsAreInitialized' != 'System_UInt32' )
    & ( 'System_Int64' != 'System_IComparable_1___System_String' )
    & ( 'SharingMode_Unshared' != 'Factorial' )
    & ( ownerFrame != 'System_UInt16' )
    & ! [X153: $int] : ( shl(X153,0) = X153 )
    & ! [X154: $int,X155: $int] : ( 'ElementType'('NonNullRefArray'(X154,X155)) = X154 )
    & ( 'ArrayCategoryInt' != 'Factorial' )
    & ( 'System_Boolean' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ( 'System_String' != 'System_Collections_IEnumerable' )
    & ! [X156: $int,X157: $int] :
        ( ( shl(X157,X156) = $product(shl(X157,$sum(X156,$uminus(1))),2) )
        | $less(X156,1) )
    & ( 'ArrayCategoryNonNullRef' != 'System_Type' )
    & ( 'System_UInt32' != 'System_IConvertible' )
    & ( 'System_Array' != 'System_UInt32' )
    & ( allocated != 'System_UInt32' )
    & ( elements != 'System_Byte' )
    & ( localinv != 'System_Char' )
    & ( 'SharingMode_Unshared' != 'System_Type' )
    & ( 'System_SByte' != 'System_UIntPtr' )
    & ( exposeVersion != ownerFrame )
    & ( sharingMode != 'System_Array' )
    & ! [X158: $int] : ( nullObject != 'ClassRepr'(X158) )
    & ( 'ArrayCategoryInt' != 'System_IConvertible' )
    & ( 'System_Type' != 'System_Int32' )
    & ( 'ArrayCategoryNonNullRef' != 'System_IComparable' )
    & ( elements != ownerFrame )
    & ( 'System_IConvertible' != 'System_IEquatable_1___System_String' )
    & ( 'System_Array' != 'System_Char' )
    & ( allocated != 'ArrayCategoryValue' )
    & ( 'NonNullFieldsAreInitialized' != 'System_Char' )
    & ( 'ArrayCategoryInt' != 'System_Object' )
    & ( exposeVersion != 'System_Char' )
    & ( 'SharingMode_Unshared' != 'FirstConsistentOwner' )
    & ( sharingMode != 'System_UInt16' )
    & ( 'System_SByte' != 'System_IEquatable_1___System_String' )
    & ( ownerRef != 'FirstConsistentOwner' )
    & ( 'System_String' = 'AsImmutable'('System_String') )
    & ( 'ArrayCategoryInt' != 'System_SByte' )
    & ( 'System_Object' != 'System_Int64' )
    & ( 'System_Object' != 'System_IntPtr' )
    & ( ownerFrame != 'System_SByte' )
    & ( 'System_Object' = sK0 )
    & ( allocated != elements )
    & ( 'SharingMode_LockProtected' != 'System_Type' )
    & ( 'System_Int16' != 'System_IEquatable_1___System_String' )
    & ( 'System_SByte' != 'System_Byte' )
    & ! [X159: $int,X160: $int] :
        ( ( 'Box'('Unbox'(X160),X160) = X160 )
        | ( nullObject = 'BoxTester'(X160,X159) ) )
    & ( true_1 = x('System_String','System_IComparable') )
    & ( 'SharingMode_Unshared' != 'SharingMode_LockProtected' )
    & ( localinv != sharingMode )
    & ( 'SharingMode_LockProtected' != 'System_Collections_IEnumerable' )
    & ( 'ArrayCategoryRef' != 'System_Int32' )
    & ( 'ArrayCategoryInt' != 'System_Int64' )
    & ( 'System_Int64' != 'System_Char' )
    & ( 'ArrayCategoryNonNullRef' != 'System_Char' )
    & ( 'SharingMode_LockProtected' != stringLiteral0 )
    & ( 'System_Char' != 'System_IConvertible' )
    & ( 'ArrayCategoryNonNullRef' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ( 'ArrayCategoryRef' != 'System_IComparable_1___System_String' )
    & ( 'SharingMode_Unshared' != 'ArrayCategoryNonNullRef' )
    & ( 'NonNullFieldsAreInitialized' != 'System_IComparable' )
    & ! [X161: $int] :
        ( ( ( ~ $less(X161,0)
            & $less(X161,65536) )
          | ( true_1 != 'InRange'(X161,'System_UInt16') ) )
        & ( ( true_1 = 'InRange'(X161,'System_UInt16') )
          | $less(X161,0)
          | ~ $less(X161,65536) ) )
    & ( elements != 'ArrayCategoryInt' )
    & ( 'Factorial' = 'AsMutable'('Factorial') )
    & ( 'SharingMode_LockProtected' != 'ArrayCategoryValue' )
    & ( inv != ownerRef )
    & ( 'System_Int64' != 'System_IComparable' )
    & ( 'SharingMode_Unshared' != 'ArrayCategoryInt' )
    & ( exposeVersion != ownerRef )
    & ( 'System_String' != 'System_Int16' )
    & ( elements != 'System_Int32' )
    & ( sharingMode != 'System_UInt32' )
    & ( 'ArrayCategoryRef' != 'System_UIntPtr' )
    & ! [X162: $int] : ( true_1 != x(typeof('ClassRepr'(X162)),'System_Object') )
    & ! [X163: $int,X164: $int,X165: $int,X166: $int] :
        ( ( ( nullObject = sK19(X163,X164,X165,X166) )
          | ( true_1 != 'IsHeap'(X163) )
          | ( ( select2(X163,sK19(X163,X164,X165,X166),ownerRef) = X164 )
            & ( select2(X163,sK19(X163,X164,X165,X166),ownerFrame) = X165 ) ) )
        & ( sK19(X163,X164,X165,X166) = select2(X163,X164,'AsRepField'(X166,X165)) ) )
    & ( 'ArrayCategoryNonNullRef' != 'System_UInt64' )
    & ( 'FirstConsistentOwner' != 'System_SByte' )
    & ( 'SharingMode_LockProtected' != 'System_IConvertible' )
    & ( 'System_String' != 'System_IConvertible' )
    & ( 'System_Int64' != 'System_IEquatable_1___System_String' )
    & ( 'ArrayCategoryRef' != 'System_String' )
    & ( 'SharingMode_LockProtected' != 'System_UInt64' )
    & ( 'SharingMode_LockProtected' != 'Factorial' )
    & ( 'PeerGroupPlaceholder' != 'System_String' )
    & ( inv != 'ArrayCategoryRef' )
    & ( 'PeerGroupPlaceholder' != 'System_Int16' )
    & ( 'System_IConvertible' != 'System_IComparable_1___System_String' )
    & ( 'System_IConvertible' != 'System_IComparable' )
    & ( $sum(int_m2147483648,1) = $sum(0,$uminus(int_2147483647)) )
    & ( inv != 'Factorial' )
    & ( 'System_IntPtr' != 'System_Collections_IEnumerable' )
    & ( 'ArrayCategoryValue' != stringLiteral0 )
    & ( elements != 'ArrayCategoryValue' )
    & ( 'NonNullFieldsAreInitialized' != 'System_IComparable_1___System_String' )
    & ( 'System_UInt32' != 'System_UIntPtr' )
    & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'Factorial' )
    & ( 'ArrayCategoryInt' != 'FirstConsistentOwner' )
    & ( 'System_IComparable_1___System_String' != 'Factorial' )
    & ( 'System_Array' != 'System_UIntPtr' )
    & ( true_1 = 'IncludeInMainFrameCondition'(exposeVersion) )
    & ( 'PeerGroupPlaceholder' != 'System_Byte' )
    & ( 'System_String' != 'System_Char' )
    & ( 'System_UIntPtr' != 'System_ICloneable' )
    & ( 'System_Object' != 'System_UIntPtr' )
    & ! [X168: $int,X169: $int,X170: $int] :
        ( ( ( ( true_1 = x(sK20(X168,X169,X170),X169) )
            & ( 'RefArray'(sK20(X168,X169,X170),X170) = X168 )
            & ( X168 != X169 ) )
          | ( true_1 != x(X168,'RefArray'(X169,X170)) ) )
        & ( sK20(X168,X169,X170) = 'ElementType'(X168) ) )
    & ( 'FirstConsistentOwner' != 'Factorial' )
    & ( 'FirstConsistentOwner' != 'System_ICloneable' )
    & ! [X172: $int,X173: $int] :
        ( ( true_1 = x(sK21(X172,X173),sK21(X172,X173)) )
        & ( true_1 = x(sK21(X172,X173),'System_Array') )
        & ( 'NonNullRefArray'(X173,X172) = sK21(X172,X173) ) )
    & ( 'SharingMode_LockProtected' != 'FirstConsistentOwner' )
    & ( 'NonNullFieldsAreInitialized' != 'System_Int16' )
    & ( sharingMode != 'ArrayCategoryRef' )
    & ( ownerFrame != 'System_Collections_IEnumerable' )
    & ! [X175: $int,X176: $int,X177: $int] :
        ( ( true_1 != 'InRange'(X176,X175) )
        | ( 'IntToInt'(X176,X177,X175) = X176 ) )
    & ( true_1 != 'IsImmutable'('Factorial') )
    & ! [X178: $int,X179: $int,X180: $int] :
        ( ( true_1 = 'StringEquals'(X178,X180) )
        | ( true_1 != 'StringEquals'(X179,X180) )
        | ( true_1 != 'StringEquals'(X178,X179) ) )
    & ! [X181: $int] : ( true_1 != 'IsMemberlessType'(typeof(X181)) )
    & ( 'System_Int16' != 'System_UInt64' )
    & ( 'System_UInt32' != 'System_IntPtr' )
    & ( sharingMode != 'ArrayCategoryValue' )
    & ( 'SharingMode_LockProtected' != 'System_SByte' )
    & ( 'SharingMode_Unshared' != 'PeerGroupPlaceholder' )
    & ( 'System_Type' != 'System_Int16' )
    & ( localinv != 'System_Object' )
    & ! [X182: $int,X183: $int] : ( 'ElementType'('ValueArray'(X183,X182)) = X183 )
    & ( ownerRef != 'System_Int32' )
    & ! [X184: $int,X185: $int,X186: $int] :
        ( ( 'ValueArray'(X185,X184) = sK22(X184,X185,X186) )
        & ( ( sK22(X184,X185,X186) = X186 )
          | ( true_1 != x(X186,sK22(X184,X185,X186)) ) ) )
    & ( 'System_String' != 'System_IntPtr' )
    & ( 'ArrayCategoryRef' != stringLiteral0 )
    & ( 'ArrayCategoryRef' != 'Factorial' )
    & ( localinv != 'NonNullFieldsAreInitialized' )
    & ( allocated != 'System_String' )
    & ( 'System_Type' != 'System_SByte' )
    & ( 'System_UInt16' != 'System_Char' )
    & ( allocated != 'System_SByte' )
    & ! [X188: $int,X189: $int,X190: $int,X191: $int,X192: $int] :
        ( ( select2(X191,X189,'AsElementsRepField'(X192,X188,X190)) = sK23(X188,X189,X190,X191,X192) )
        & ( ( true_1 != 'IsHeap'(X191) )
          | ( nullObject = sK23(X188,X189,X190,X191,X192) )
          | ( ( select2(X191,sK24(X188,X189,X190,X191,X192),ownerRef) = X189 )
            & ( select2(X191,sK24(X188,X189,X190,X191,X192),ownerFrame) = X188 ) ) )
        & ( 'ElementProxy'(sK23(X188,X189,X190,X191,X192),X190) = sK24(X188,X189,X190,X191,X192) ) )
    & ( 'SharingMode_LockProtected' != 'NonNullFieldsAreInitialized' )
    & ( allocated != 'System_IConvertible' )
    & ( ownerRef != 'System_IConvertible' )
    & ( 'ArrayCategoryValue' != 'System_Collections_IEnumerable' )
    & ( ownerFrame != 'System_UInt32' )
    & ( allocated != 'ArrayCategoryInt' )
    & ( 'System_Object' != 'System_UInt32' )
    & ( 'System_Char' != 'Factorial' )
    & ( 'System_Type' != 'System_IntPtr' )
    & ( elements != 'System_String' )
    & ( localinv != ownerFrame )
    & ( 'System_Int16' != 'System_UInt32' )
    & ( 'SharingMode_Unshared' != 'System_UInt64' )
    & ( localinv != stringLiteral0 )
    & ( 'ArrayCategoryValue' != 'FirstConsistentOwner' )
    & ( exposeVersion != sharingMode )
    & ( 'System_Boolean' != 'System_IConvertible' )
    & ( localinv != 'System_IntPtr' )
    & ! [X195: $int,X196: $int,X197: $int] :
        ( ( 'IfThenElse'(X196,X195,X197) = X197 )
        | ( true_1 = X196 ) )
    & ( ownerFrame != 'System_ICloneable' )
    & ( 'NonNullFieldsAreInitialized' != 'System_UIntPtr' )
    & ! [X198: $int,X199: $int,X200: $int] :
        ( ( ( true_1 != x(sK25(X198,X199,X200),X198) )
          | ( sK25(X198,X199,X200) = X198 )
          | ( true_1 = x('System_Array',X198) ) )
        & ( sK25(X198,X199,X200) = 'ValueArray'(X200,X199) ) )
    & ( sharingMode != 'NonNullFieldsAreInitialized' )
    & ( inv != 'NonNullFieldsAreInitialized' )
    & ( 'System_Object' != 'System_SByte' )
    & ( 'ArrayCategoryInt' != 'System_Int16' )
    & ! [X202: $int,X203: $int,X204: $int] :
        ( ( nullObject = X203 )
        | ( true_1 != x(typeof(X203),'ValueArray'(X204,X202)) )
        | ( 'Rank'(X203) = X202 ) )
    & ! [X205: $int,X206: $int,X207: $int] :
        ( ( 'Rank'(X207) = X206 )
        | ( nullObject = X207 )
        | ( true_1 != x(typeof(X207),'NonNullRefArray'(X205,X206)) ) )
    & ( 'PeerGroupPlaceholder' != stringLiteral0 )
    & ! [X208: $int,X209: $int] :
        ( ( ( 'AsImmutable'(X209) = X209 )
          & ( true_1 = 'IsImmutable'(X209) ) )
        | ( true_1 != x(X209,'AsImmutable'(X208)) ) )
    & ( 'System_Object' = 'DeclType'('NonNullFieldsAreInitialized') )
    & ( 'System_SByte' != 'System_IntPtr' )
    & ( 'System_SByte' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ( 'System_UInt32' != 'System_Char' )
    & ( ownerRef != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ( ownerFrame != 'ArrayCategoryValue' )
    & ( inv != 'System_Byte' )
    & ( inv != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ! [X210: $int,X211: $int] :
        ( ( 'AsRefField'(X210,X211) = X210 )
        | ( 'AsNonNullRefField'(X210,X211) != X210 ) )
    & ! [X212: $int,X213: $int,X214: $int] :
        ( ( true_1 = 'IsAllocated'(X214,'ValueArrayGet'(X212,X213)) )
        | ( true_1 != 'IsAllocated'(X214,X212) ) )
    & ( 'System_Byte' != 'System_Int64' )
    & ! [X215: $int,X216: $int] : ( 'System_Object' = typeof('ElementProxy'(X216,X215)) )
    & ( 'SharingMode_Unshared' != 'System_IEquatable_1___System_String' )
    & ( 'System_Array' != 'System_IEquatable_1___System_String' )
    & ( exposeVersion != 'NonNullFieldsAreInitialized' )
    & ( allocated != 'System_Int16' )
    & ( 'System_Array' != 'System_Int16' )
    & ( localinv != 'System_Boolean' )
    & ( sharingMode != 'ArrayCategoryInt' )
    & ( sharingMode != 'SharingMode_LockProtected' )
    & ( localinv != 'System_IComparable_1___System_String' )
    & ! [X217: $int] :
        ( ! [X218: $int,X219: $int] :
            ( ( ( ( select2(X218,sK26(X217,X218,X219),localinv) = sK27(X217,X218,X219) )
                & ( select2(X218,sK26(X217,X218,X219),inv) = sK27(X217,X218,X219) ) )
              | ( true_1 != 'IsHeap'(X218) ) )
            & ( typeof(sK26(X217,X218,X219)) = sK27(X217,X218,X219) )
            & ( 'Box'(X219,X217) = sK26(X217,X218,X219) ) )
        | ( true_1 != 'IsValueType'('UnboxedType'(X217)) ) )
    & ( 'System_Int32' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ( 'System_Array' != 'Factorial' )
    & ( ownerRef != 'System_UInt16' )
    & ( 'System_UInt16' != 'System_IEquatable_1___System_String' )
    & ( exposeVersion != 'System_Byte' )
    & ( 'System_SByte' != 'System_Int64' )
    & ( 'ArrayCategoryNonNullRef' != 'System_IComparable_1___System_String' )
    & ( inv != 'System_IntPtr' )
    & ( true_1 != 'IncludedInModifiesStar'(ownerFrame) )
    & ( 'System_UInt64' != 'System_IEquatable_1___System_String' )
    & ( 'SharingMode_Unshared' != 'System_UIntPtr' )
    & ( 'SharingMode_LockProtected' != ownerRef )
    & ( exposeVersion != 'PeerGroupPlaceholder' )
    & ( sharingMode != 'System_IEquatable_1___System_String' )
    & ( 'System_IComparable_1___System_String' = 'AsInterface'('System_IComparable_1___System_String') )
    & ( 'System_Boolean' != 'System_IComparable' )
    & ! [X222: $int,X223: $int] :
        ( ( 'Box'(X222,X223) = sK28(X222,X223) )
        & ( ( X222 = X223 )
          | ( sK28(X222,X223) != X223 )
          | ( true_1 != x('UnboxedType'(sK28(X222,X223)),'System_Object') ) ) )
    & ( elements != inv )
    & ( elements != 'System_IntPtr' )
    & ( 'System_UInt64' != 'System_UIntPtr' )
    & ( exposeVersion != 'System_UInt32' )
    & ! [X225: $int,X226: $int] : ( 'Unbox'('Box'(X225,X226)) = X225 )
    & ( 'ArrayCategoryInt' != 'System_IComparable_1___System_String' )
    & ( 'System_Int16' != 'System_UIntPtr' )
    & ( 'ArrayCategoryInt' != 'System_String' )
    & ( 'SharingMode_LockProtected' != 'System_Object' )
    & ( true_1 = 'IsMemberlessType'('System_ICloneable') )
    & ( 'System_Byte' != 'System_IComparable_1___System_String' )
    & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_IComparable' )
    & ( 'SharingMode_LockProtected' != 'ArrayCategoryNonNullRef' )
    & ( true_1 = x('System_IComparable','System_Object') )
    & ( ownerFrame != 'System_Int16' )
    & ! [X227: $int] :
        ( ( ( $less(X227,32768)
            & ~ $less(X227,$sum(0,$uminus(32768))) )
          | ( true_1 != 'InRange'(X227,'System_Int16') ) )
        & ( ( true_1 = 'InRange'(X227,'System_Int16') )
          | ~ $less(X227,32768)
          | $less(X227,$sum(0,$uminus(32768))) ) )
    & ! [X228: $int,X229: $int] :
        ( ( sK29(X228,X229) = select2(X229,X228,'FirstConsistentOwner') )
        & ( select2(X229,sK29(X228,X229),ownerFrame) = sK30(X228,X229) )
        & ( sK33(X228,X229) = select2(X229,X228,ownerFrame) )
        & ( select2(X229,sK29(X228,X229),ownerRef) = sK31(X228,X229) )
        & ( ( true_1 != select2(X229,X228,allocated) )
          | ( 'PeerGroupPlaceholder' = sK33(X228,X229) )
          | ( 'BaseClass'(sK33(X228,X229)) = select2(X229,sK32(X228,X229),localinv) )
          | ( nullObject = X228 )
          | ( true_1 != x(select2(X229,sK32(X228,X229),inv),sK33(X228,X229)) )
          | ( ( true_1 = select2(X229,sK29(X228,X229),allocated) )
            & ( ( true_1 != x(select2(X229,sK31(X228,X229),inv),sK30(X228,X229)) )
              | ( 'PeerGroupPlaceholder' = sK30(X228,X229) )
              | ( 'BaseClass'(sK30(X228,X229)) = select2(X229,sK31(X228,X229),localinv) ) )
            & ( nullObject != sK29(X228,X229) ) )
          | ( true_1 != 'IsHeap'(X229) ) )
        & ( sK32(X228,X229) = select2(X229,X228,ownerRef) ) )
    & ( allocated != 'System_Byte' )
    & ( 'System_String' != 'Factorial' )
    & ( ownerFrame != 'System_Int32' )
    & ( sharingMode != 'System_IntPtr' )
    & ( 'System_Object' != 'System_IEquatable_1___System_String' )
    & ( localinv != 'System_IComparable' )
    & ( true_1 = 'IsValueType'('System_Int64') )
    & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_Collections_IEnumerable' )
    & ( true_1 = x('System_String','System_IEquatable_1___System_String') )
    & ( 'System_Int16' != 'System_IComparable' )
    & ( 'System_Type' != 'Factorial' )
    & ( 'ArrayCategoryRef' != 'FirstConsistentOwner' )
    & ( elements != exposeVersion )
    & ( 'ArrayCategoryInt' != 'System_UInt64' )
    & ( 'System_Byte' != 'System_IComparable' )
    & ( 'System_UInt64' != stringLiteral0 )
    & ! [X235: $int,X236: $int] :
        ( ( ~ $less(X235,32768)
          | $less(16,X236)
          | $less(X236,0)
          | $less(X235,0)
          | ( ~ $less(int_2147483647,sK34(X235,X236))
            & ~ $less(sK34(X235,X236),0) ) )
        & ( shl(X235,X236) = sK34(X235,X236) ) )
    & ( sharingMode != 'System_Byte' )
    & ( 'ArrayCategoryValue' != 'System_IntPtr' )
    & ( 'ArrayCategoryNonNullRef' != 'FirstConsistentOwner' )
    & ( 'System_Int64' != 'Factorial' )
    & ( 'System_Int16' != 'System_IConvertible' )
    & ! [X238: $int] :
        ( ( ( $less(X238,128)
            & ~ $less(X238,$sum(0,$uminus(128))) )
          | ( true_1 != 'InRange'(X238,'System_SByte') ) )
        & ( ( true_1 = 'InRange'(X238,'System_SByte') )
          | ~ $less(X238,128)
          | $less(X238,$sum(0,$uminus(128))) ) )
    & ( localinv != 'System_String' )
    & ( inv != 'ArrayCategoryNonNullRef' )
    & ( 'SharingMode_Unshared' != 'System_IComparable_1___System_String' )
    & ( localinv != 'System_SByte' )
    & ! [X239: $int,X240: $int] :
        ( ( sK35(X239,X240) = $sum(X240,$uminus(X239)) )
        & ( $less(X239,0)
          | $less(sK35(X239,X240),0)
          | ( x_2(sK35(X239,X240),X239) = x_2(X240,X239) ) ) )
    & ( 'ArrayCategoryRef' != 'System_Byte' )
    & ( 'System_IComparable' != stringLiteral0 )
    & ( 'System_IntPtr' != 'System_IEquatable_1___System_String' )
    & ( 'System_UInt32' != 'System_IComparable' )
    & ( 'System_String' != 'System_SByte' )
    & ( ownerFrame != 'System_String' )
    & ( 'SharingMode_LockProtected' != 'System_Int64' )
    & ( true_1 = 'IsMemberlessType'('System_Collections_Generic_IEnumerable_1___System_Char') )
    & ! [X242: $int,X243: $int,X244: $int] :
        ( ( true_1 != 'System_String_Equals_System_String_System_String'(X242,X243,X244) )
        | ( 'System_String_IsInterned_System_String_notnull'(X242,X244) = 'System_String_IsInterned_System_String_notnull'(X242,X243) )
        | ( nullObject = X243 )
        | ( nullObject = X244 ) )
    & ( 'System_Boolean' != stringLiteral0 )
    & ( 'ArrayCategoryNonNullRef' != 'System_Array' )
    & ( 'ArrayCategoryValue' != 'System_Char' )
    & ( 'FirstConsistentOwner' != 'System_UInt64' )
    & ( 'PeerGroupPlaceholder' != 'System_IntPtr' )
    & ( true_1 = 'IsValueType'('System_UInt64') )
    & ! [X245: $int,X246: $int,X247: $int,X248: $int] :
        ( ( 'IntArrayGet'('IntArraySet'(X248,X247,X246),X245) = 'IntArrayGet'(X248,X245) )
        | ( X245 = X247 ) )
    & ( 'ArrayCategoryValue' != 'System_IComparable_1___System_String' )
    & ( 'System_IConvertible' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ( true_1 = x('System_ICloneable','System_Object') )
    & ( 'SharingMode_Unshared' != 'System_UInt16' )
    & ( ownerRef != 'System_Type' )
    & ( 'ArrayCategoryValue' != 'ArrayCategoryRef' )
    & ( 'System_Boolean' != 'System_Type' )
    & ( allocated != 'System_Type' )
    & ( 'System_Int32' != 'System_Collections_IEnumerable' )
    & ( 'System_Int64' != 'System_UInt64' )
    & ( localinv != 'ArrayCategoryInt' )
    & ( localinv != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ( sharingMode != ownerRef )
    & ! [X249: $int,X250: $int] :
        ( ( sK36(X249,X250) = min(X249,X250) )
        & ( ( sK36(X249,X250) = X250 )
          | ( sK36(X249,X250) = X249 ) )
        & ~ $less(X250,sK36(X249,X250))
        & ~ $less(X249,sK36(X249,X250)) )
    & ! [X252: $int] : ( 'TypeName'('TypeObject'(X252)) = X252 )
    & ( true_1 = 'IsValueType'('System_Int32') )
    & ( 'ArrayCategoryNonNullRef' != 'System_Byte' )
    & ( allocated != 'System_ICloneable' )
    & ( elements != 'FirstConsistentOwner' )
    & ( 'ArrayCategoryInt' != 'System_UIntPtr' )
    & ( 'NonNullFieldsAreInitialized' != 'System_UInt64' )
    & ( allocated != 'System_IntPtr' )
    & ( 'System_Type' != 'System_Collections_IEnumerable' )
    & ! [X253: $int,X254: $int,X255: $int] :
        ( ( ( nullObject = sK37(X253,X254,X255) )
          | ( ( select2(X254,sK37(X253,X254,X255),ownerRef) = select2(X254,X255,ownerRef) )
            & ( select2(X254,sK37(X253,X254,X255),ownerFrame) = select2(X254,X255,ownerFrame) ) )
          | ( true_1 != 'IsHeap'(X254) ) )
        & ( sK37(X253,X254,X255) = select2(X254,X255,'AsPeerField'(X253)) ) )
    & ( 'System_Array' != 'System_Int64' )
    & ( localinv != 'System_Int64' )
    & ( 'SharingMode_Unshared' != 'System_String' )
    & ( true_1 = x('System_IConvertible','System_Object') )
    & ( 'System_SByte' != 'System_Int16' )
    & ( sharingMode != 'System_Boolean' )
    & ( 'SharingMode_Unshared' != 'NonNullFieldsAreInitialized' )
    & ( ownerRef != 'System_Boolean' )
    & ! [X257: $int] :
        ( ( true_1 != 'IsHeap'(X257) )
        | ( true_1 = select2(X257,stringLiteral0,allocated) ) )
    & ( 'System_IConvertible' != stringLiteral0 )
    & ( 'System_Int32' != 'System_UInt64' )
    & ( true_1 = 'IsValueType'('System_IntPtr') )
    & ( 'System_Object' != 'System_Int16' )
    & ( localinv != 'System_Int16' )
    & ( 'System_Byte' != 'System_UInt16' )
    & ( 'System_Int32' != 'System_IComparable' )
    & ( 'System_IConvertible' != 'System_Collections_IEnumerable' )
    & ( 'System_Array' != 'System_Type' )
    & ( 'System_Int32' != 'Factorial' )
    & ( 'System_Int16' != 'Factorial' )
    & ( 'SharingMode_Unshared' != 'System_IntPtr' )
    & ! [X258: $int,X259: $int] :
        ( ~ $less(sK38(X258,X259),X259)
        & ( sK38(X258,X259) = max(X258,X259) )
        & ~ $less(sK38(X258,X259),X258)
        & ( ( sK38(X258,X259) = X259 )
          | ( sK38(X258,X259) = X258 ) ) )
    & ( 'System_Object' != stringLiteral0 )
    & ( 'FirstConsistentOwner' != 'System_IComparable' )
    & ( 'ArrayCategoryInt' != 'System_Int32' )
    & ( 'ArrayCategoryValue' != 'System_Boolean' )
    & ( elements != 'System_Int64' )
    & ( true_1 = 'IsValueType'('System_Int16') )
    & ( 'Factorial' != 'System_Collections_IEnumerable' )
    & ( true_1 != 'IncludeInMainFrameCondition'('FirstConsistentOwner') )
    & ( ownerRef != 'System_UInt32' )
    & ( 'FirstConsistentOwner' != 'System_IEquatable_1___System_String' )
    & ( 'SharingMode_Unshared' != 'ArrayCategoryRef' )
    & ( elements != 'System_IComparable_1___System_String' )
    & ( 'System_IEquatable_1___System_String' != 'System_IComparable' )
    & ( 'System_Type' != 'System_IComparable' )
    & ( true_1 = 'IncludeInMainFrameCondition'(elements) )
    & ( allocated != stringLiteral0 )
    & ( 'System_Int64' != 'System_IntPtr' )
    & ! [X261: $int] :
        ( ( stringLiteral0 = 'System_String_IsInterned_System_String_notnull'(X261,stringLiteral0) )
        | ( true_1 != 'IsHeap'(X261) ) )
    & ( 'System_UInt64' != 'System_IComparable' )
    & ! [X262: $int,X263: $int,X264: $int] :
        ( ( true_1 != 'IsHeap'(X263) )
        | ( true_1 != select2(X263,X262,allocated) )
        | ( true_1 = select2(X263,select2(X263,X262,X264),allocated) ) )
    & ( true_1 = x('System_String','System_IConvertible') )
    & ( 'System_ICloneable' != 'System_IConvertible' )
    & ( 'FirstConsistentOwner' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ( 'ArrayCategoryValue' != 'System_UInt32' )
    & ( inv != 'ArrayCategoryValue' )
    & ( 'ArrayCategoryRef' != 'System_ICloneable' )
    & ( 'ArrayCategoryValue' != 'System_SByte' )
    & ( ownerFrame != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ! [X265: $int,X266: $int] :
        ( ( true_1 = select2(X266,'ClassRepr'(X265),allocated) )
        | ( true_1 != 'IsHeap'(X266) ) )
    & ( true_1 = x('System_Type','System_Object') )
    & ( elements != 'System_Type' )
    & ( 'System_IConvertible' = 'AsInterface'('System_IConvertible') )
    & ( 'SharingMode_LockProtected' != 'System_UInt16' )
    & ( 'PeerGroupPlaceholder' != 'System_UInt16' )
    & ! [X267: $int,X268: $int] : ( $sum(X267,$uminus($product(x_1(X267,X268),X268))) = x_2(X267,X268) )
    & ( 'PeerGroupPlaceholder' != 'FirstConsistentOwner' )
    & ( 'System_String' != 'FirstConsistentOwner' )
    & ( localinv != 'ArrayCategoryValue' )
    & ( ownerFrame != 'ArrayCategoryInt' )
    & ( exposeVersion != 'ArrayCategoryRef' )
    & ( 'System_UInt16' != 'System_IntPtr' )
    & ( 'ArrayCategoryValue' != 'System_String' )
    & ( 'System_String' != 'System_IEquatable_1___System_String' )
    & ( 'System_Array' != 'FirstConsistentOwner' )
    & ( inv != 'System_Char' )
    & ( 'ArrayCategoryNonNullRef' != 'System_UInt16' )
    & ( ownerFrame != 'System_IntPtr' )
    & ( 'System_Int16' != 'System_Char' )
    & ( 'ArrayCategoryValue' != 'System_IEquatable_1___System_String' )
    & ( 'SharingMode_LockProtected' != 'PeerGroupPlaceholder' )
    & ( 'SharingMode_LockProtected' != 'System_IEquatable_1___System_String' )
    & ! [X269: $int,X270: $int,X271: $int] :
        ( ( ( true_1 != 'NonNullRefArrayRaw'(X269,X271,X270) )
          | ( ( true_1 = x(sK39(X269,X270,X271),'System_Array') )
            & ( true_1 = x(X271,'ElementType'(sK39(X269,X270,X271))) )
            & ( 'Rank'(X269) = X270 ) ) )
        & ( typeof(X269) = sK39(X269,X270,X271) ) )
    & ! [X273: $int,X274: $int,X275: $int,X276: $int] :
        ( ( 'StructGet'('StructSet'(X274,X275,X276),X273) = 'StructGet'(X274,X273) )
        | ( X273 = X275 ) )
    & ( sharingMode != 'System_IComparable' )
    & ( 'StringLength'(stringLiteral0) = 19 )
    & ( inv != ownerFrame )
    & ( 'ArrayCategoryInt' != 'System_Type' )
    & ! [X277: $int,X278: $int,X279: $int] :
        ( ( ( sK40(X277,X278,X279) != X278 )
          | ( true_1 != x('UnboxedType'(sK41(X277,X278,X279)),sK40(X277,X278,X279)) )
          | ( sK41(X277,X278,X279) != X277 )
          | ( true_1 = x(typeof(X277),X278) ) )
        & ( 'Box'(X279,X277) = sK41(X277,X278,X279) )
        & ( sK40(X277,X278,X279) = 'AsInterface'(X278) ) )
    & ( exposeVersion != 'System_String' )
    & ( inv != 'System_Int64' )
    & ( 'NonNullFieldsAreInitialized' != 'FirstConsistentOwner' )
    & ( localinv != 'System_ICloneable' )
    & ( 'ArrayCategoryNonNullRef' != 'System_String' )
    & ( 'System_UIntPtr' != 'System_Collections_IEnumerable' )
    & ( elements != 'SharingMode_Unshared' )
    & ! [X282: $int,X283: $int,X284: $int] :
        ( ( true_1 != x(X284,'RefArray'(X283,X282)) )
        | ( 'ArrayCategoryRef' = 'ArrayCategory'(X284) ) )
    & ( ownerRef != 'ArrayCategoryNonNullRef' )
    & ( 'System_Char' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ( 'ArrayCategoryValue' != 'Factorial' )
    & ( 'System_Int32' != 'System_UInt32' )
    & ( 'System_Object' != 'System_IConvertible' )
    & ( ( true_1 != 'PurityAxiomsCanBeAssumed' )
      | ! [X285: $int,X286: $int] :
          ( ( 'Factorial_recursiveFac_System_Int32'(X285,X286) = sK42(X285,X286) )
          & ( ( true_1 != 'IsHeap'(X285) )
            | ( ( ( 0 != X286 )
                | ( 1 = sK42(X285,X286) ) )
              & ( ( 0 = X286 )
                | ( sK42(X285,X286) = $product(X286,'Factorial_recursiveFac_System_Int32'(X285,$sum(X286,$uminus(1)))) ) ) ) ) ) )
    & ( inv != 'System_UInt32' )
    & ! [X288: $int,X289: $int,X290: $int] :
        ( ( true_1 != x(typeof(X288),'RefArray'(X290,X289)) )
        | ( nullObject = X288 )
        | ( 'Rank'(X288) = X289 ) )
    & ( 'System_IEquatable_1___System_String' != 'System_IComparable_1___System_String' )
    & ( 'System_Array' != 'System_SByte' )
    & $less(int_9223372036854775807,int_18446744073709551615)
    & ( 'System_Boolean' != 'System_Object' )
    & ( 'System_Int64' != 'System_ICloneable' )
    & ( ownerRef != 'System_IComparable' )
    & ( 'System_UInt64' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ! [X291: $int] :
        ( ( true_1 = x(X291,sK43(X291)) )
        & ( ( 'System_Object' = X291 )
          | ( sK43(X291) != X291 ) )
        & ( sK43(X291) = 'BaseClass'(X291) ) )
    & ! [X293: $int,X294: $int] :
        ( ( ( 'AsMutable'(X293) = X293 )
          & ( true_1 != 'IsImmutable'(X293) ) )
        | ( true_1 != x(X293,'AsMutable'(X294)) ) )
    & ( true_1 = 'IsValueType'('System_Char') )
    & ( 'FirstConsistentOwner' != 'System_Int32' )
    & ( 'PeerGroupPlaceholder' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ( 'ArrayCategoryInt' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ( ownerRef != 'System_Int16' )
    & ( sharingMode != 'System_Int16' )
    & ( elements != ownerRef )
    & ( 'System_ICloneable' != 'System_IComparable_1___System_String' )
    & ( 'NonNullFieldsAreInitialized' != 'System_SByte' )
    & ( 'System_IntPtr' != 'System_ICloneable' )
    & ( 'System_Char' != 'System_IntPtr' )
    & ( elements != 'ArrayCategoryRef' )
    & ( 'System_Int32' != 'System_IComparable_1___System_String' )
    & ( 'PeerGroupPlaceholder' != 'System_Collections_IEnumerable' )
    & ( ownerRef != 'PeerGroupPlaceholder' )
    & ! [X295: $int,X296: $int,X297: $int] :
        ( ( ( true_1 = x('System_Array',X297) )
          | ( true_1 != x(sK44(X295,X296,X297),X297) )
          | ( sK44(X295,X296,X297) = X297 ) )
        & ( 'IntArray'(X295,X296) = sK44(X295,X296,X297) ) )
    & ( 'System_Boolean' != 'System_SByte' )
    & ( localinv != 'System_Collections_IEnumerable' )
    & ( 'System_Collections_Generic_IEnumerable_1___System_Char' = 'AsInterface'('System_Collections_Generic_IEnumerable_1___System_Char') )
    & ( ownerFrame != 'System_IConvertible' )
    & ( 'System_Char' != 'System_UIntPtr' )
    & ( exposeVersion != 'System_Int16' )
    & ( 'ArrayCategoryRef' != 'System_Collections_IEnumerable' )
    & ( allocated != 'ArrayCategoryNonNullRef' )
    & ( true_1 != 'IsStaticField'(localinv) )
    & ( 'System_Boolean' != 'System_IntPtr' )
    & ( 'System_UInt64' != 'System_IConvertible' )
    & ( inv != 'System_Collections_IEnumerable' )
    & ( ownerFrame != 'System_IComparable' )
    & ( 'System_UInt16' != 'System_Int32' )
    & ( 'ArrayCategoryRef' != 'System_Int16' )
    & ! [X299: $int,X300: $int,X301: $int] :
        ( ( ( true_1 != x(X300,'NonNullRefArray'(X299,X301)) )
          | ( ( X299 != X300 )
            & ( 'NonNullRefArray'(sK45(X299,X300,X301),X301) = X300 )
            & ( true_1 = x(sK45(X299,X300,X301),X299) ) ) )
        & ( 'ElementType'(X300) = sK45(X299,X300,X301) ) )
    & ( elements != 'SharingMode_LockProtected' )
    & ( 'System_IComparable' != 'System_Collections_IEnumerable' )
    & ( 'ArrayCategoryNonNullRef' != 'System_Int16' )
    & ( 'BaseClass'('Factorial') = sK1 )
    & ( 'PeerGroupPlaceholder' != 'ArrayCategoryInt' )
    & ( 'System_Int64' != 'System_IConvertible' )
    & ! [X303: $int,X304: $int] :
        ( $less(X303,0)
        | ( x_2($sum(X304,X303),X304) = x_2(X303,X304) )
        | $less(X304,0) )
    & ( ownerRef != 'System_Int64' )
    & ( 'ArrayCategoryRef' != 'System_UInt32' )
    & ( 'System_Object' != 'System_Type' )
    & ( 'NonNullFieldsAreInitialized' != 'System_Int64' )
    & ! [X305: $int,X306: $int] :
        ( ( true_1 != 'IsAllocated'(X306,X305) )
        | ( true_1 != 'IsHeap'(X306) )
        | ( true_1 = 'IsAllocated'(X306,'ElementProxy'(X305,$sum(0,$uminus(1)))) )
        | ( true_1 != x(typeof(X305),'System_Array') ) )
    & ( 'System_Array' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ( 'System_Boolean' != 'System_Collections_IEnumerable' )
    & ( 'System_Boolean' != 'System_Byte' )
    & ( 'System_UInt32' != stringLiteral0 )
    & ( 'ArrayCategoryRef' != 'System_IEquatable_1___System_String' )
    & ( 'System_Boolean' != 'System_IComparable_1___System_String' )
    & ( true_1 = x('System_Collections_Generic_IEnumerable_1___System_Char','System_Object') )
    & ( 'System_IComparable' != 'Factorial' )
    & ( 'System_IEquatable_1___System_String' = 'AsInterface'('System_IEquatable_1___System_String') )
    & ( sharingMode != 'ArrayCategoryNonNullRef' )
    & ( 'PeerGroupPlaceholder' != 'System_IConvertible' )
    & ( 'System_Byte' != 'System_ICloneable' )
    & ( 'SharingMode_Unshared' != 'System_Int32' )
    & ( inv != 'System_Array' )
    & ! [X307: $int] : ~ $less('Rank'(X307),1)
    & ( sharingMode != 'System_IConvertible' )
    & ( allocated != 'Factorial' )
    & ( 'System_Array' != stringLiteral0 )
    & ( 'System_Int16' != 'System_IComparable_1___System_String' )
    & ( 'SharingMode_Unshared' != 'System_IConvertible' )
    & ( true_1 = 'IsValueType'('System_SByte') )
    & ( true_1 = 'IncludeInMainFrameCondition'(ownerRef) )
    & ( 'ArrayCategoryInt' != 'System_ICloneable' )
    & ( elements != localinv )
    & ( true_1 = 'IncludeInMainFrameCondition'(ownerFrame) )
    & ( 'System_UInt32' != 'System_IComparable_1___System_String' )
    & ( 'System_UIntPtr' != 'System_IComparable' )
    & ( 'SharingMode_LockProtected' != 'System_Boolean' )
    & ( exposeVersion != 'System_UInt16' )
    & ( 'System_String' != 'System_IComparable' )
    & ( 'SharingMode_LockProtected' != 'System_ICloneable' )
    & ( 'ArrayCategoryInt' != 'System_IntPtr' )
    & ( ownerRef != ownerFrame )
    & ( 'SharingMode_LockProtected' != 'System_IntPtr' )
    & ( 'System_Type' != 'System_String' )
    & ( elements != stringLiteral0 )
    & ( 'System_Object' != 'System_UInt64' )
    & ( inv != 'System_Boolean' )
    & ( 'NonNullFieldsAreInitialized' != 'System_UInt16' )
    & ( elements != 'PeerGroupPlaceholder' )
    & ( 'System_Array' != 'System_Boolean' )
    & ( 'System_UInt64' != 'System_IntPtr' )
    & ( true_1 = 'IsNotNull'(stringLiteral0,'System_String') )
    & ( 'System_Int16' != 'System_Int64' )
    & ( exposeVersion != 'System_UInt64' )
    & ( 'System_SByte' != 'System_IComparable_1___System_String' )
    & ! [X308: $int,X309: $int] :
        ( ( true_1 = x(sK46(X308,X309),'System_Array') )
        & ( sK46(X308,X309) = 'IntArray'(X309,X308) )
        & ( true_1 = x(sK46(X308,X309),sK46(X308,X309)) ) )
    & ( true_1 = 'IsValueType'('System_UInt16') )
    & ( 'ArrayCategoryRef' != 'NonNullFieldsAreInitialized' )
    & ( inv != 'SharingMode_Unshared' )
    & ( elements != 'ArrayCategoryNonNullRef' )
    & ( localinv != 'PeerGroupPlaceholder' )
    & ( 'ArrayCategoryValue' != 'System_UInt64' )
    & ( true_1 = x('System_IComparable','System_IComparable') )
    & ( 'System_Boolean' != 'System_UInt32' )
    & ( inv != 'System_Int16' )
    & ( 'System_Object' != 'System_Byte' )
    & ( 'System_Type' != 'System_UInt16' )
    & ! [X311: $int] :
        ( ( ( true_1 = 'InRange'(X311,'System_Byte') )
          | ~ $less(X311,256)
          | $less(X311,0) )
        & ( ( $less(X311,256)
            & ~ $less(X311,0) )
          | ( true_1 != 'InRange'(X311,'System_Byte') ) ) )
    & ( 'ArrayCategoryInt' != 'System_IComparable' )
    & ( true_1 = 'IsMemberlessType'('System_IComparable') )
    & ( 'System_Array' != 'System_IConvertible' )
    & ( 'System_UIntPtr' != 'System_IComparable_1___System_String' )
    & ! [X312: $int,X313: $int,X314: $int,X315: $int] : ( 'ArrayIndexInvX'('ArrayIndex'(X313,X315,X312,X314)) = X312 )
    & ( $sum(int_m9223372036854775808,1) = $sum(0,$uminus(int_9223372036854775807)) )
    & ( allocated != ownerFrame )
    & ! [X316: $int,X317: $int] :
        ( ( sK47(X316,X317) = x_2(X316,X317) )
        & ( $less(X316,0)
          | ( ~ $less(sK47(X316,X317),0)
            & $less(sK47(X316,X317),X317) )
          | ~ $less(0,X317) ) )
    & ( true_1 = x('System_Collections_Generic_IEnumerable_1___System_Char','System_Collections_Generic_IEnumerable_1___System_Char') )
    & ( sharingMode != 'System_UInt64' )
    & ( elements != 'Factorial' )
    & ! [X319: $int,X320: $int,X321: $int] :
        ( ( sK48(X319,X320,X321) = 'RefArrayGet'(select2(X319,X320,elements),X321) )
        & ( ( true_1 = x(typeof(sK48(X319,X320,X321)),'ElementType'(typeof(X320))) )
          | ( nullObject = sK48(X319,X320,X321) )
          | ( true_1 != 'IsHeap'(X319) ) ) )
    & ( 'SharingMode_Unshared' != 'System_Byte' )
    & ! [X323: $int,X324: $int] :
        ( ( true_1 = x(sK49(X323,X324),sK49(X323,X324)) )
        & ( true_1 = x(sK49(X323,X324),'System_Array') )
        & ( sK49(X323,X324) = 'RefArray'(X323,X324) ) )
    & ( 'SharingMode_LockProtected' != 'System_UInt32' )
    & ( localinv != 'System_IConvertible' )
    & ! [X326: $int,X327: $int,X328: $int] :
        ( ( true_1 != 'IsAllocated'(X326,X328) )
        | ( true_1 = 'IsAllocated'(X326,'RefArrayGet'(X328,X327)) ) )
    & ( inv != 'System_SByte' )
    & ( ownerRef != 'System_Array' )
    & ( 'ArrayCategoryNonNullRef' != 'NonNullFieldsAreInitialized' )
    & ( true_1 != 'IncludedInModifiesStar'(ownerRef) )
    & ( allocated != 'System_IComparable' )
    & ( 'System_Type' != 'System_UIntPtr' )
    & ! [X329: $int,X330: $int] :
        ( ( ~ $less(X329,0)
          | $less(X330,0)
          | ( $less(sK50(X329,X330),$sum(0,$uminus(X329)))
            & ~ $less(sK50(X329,X330),0) ) )
        & ( sK50(X329,X330) = x_2(X330,X329) ) )
    & ( localinv != 'System_UInt32' )
    & $less(int_m9223372036854775808,int_m2147483648)
    & ( 'System_ICloneable' != 'System_IEquatable_1___System_String' )
    & ( 'System_UInt16' != stringLiteral0 )
    & ( allocated != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ( ownerFrame != 'System_Char' )
    & ( localinv != 'System_UInt64' )
    & ( 'SharingMode_Unshared' != 'System_ICloneable' )
    & ( inv != 'System_IComparable' )
    & ( 'ArrayCategoryValue' != 'System_ICloneable' )
    & ( elements != 'System_Array' )
    & ( 'System_IComparable' = 'AsInterface'('System_IComparable') )
    & ( 'System_Int16' != stringLiteral0 )
    & ( 'System_Object' != 'NonNullFieldsAreInitialized' )
    & ( inv != 'System_IComparable_1___System_String' )
    & ! [X332: $int] : ~ $less('StringLength'(X332),0)
    & ! [X333: $int,X334: $int,X335: $int] :
        ( ( true_1 != 'IsHeap'(X333) )
        | ( true_1 = 'IsAllocated'(X333,select2(X333,X335,X334)) )
        | ( true_1 != select2(X333,X335,allocated) ) )
    & ( sharingMode != 'System_ICloneable' )
    & ! [X336: $int,X337: $int,X338: $int] :
        ( ( ( true_1 != x(select2(X336,sK52(X336,X337,X338),inv),sK51(X336,X337,X338)) )
          | ( select2(X336,sK52(X336,X337,X338),localinv) = 'BaseClass'(sK51(X336,X337,X338)) )
          | ( true_1 != select2(X336,X338,allocated) )
          | ( true_1 != 'IsHeap'(X336) )
          | ( 'PeerGroupPlaceholder' = sK51(X336,X337,X338) )
          | ( 'AsPureObject'(X338) != X338 )
          | ( nullObject = X338 )
          | ( select2(X336,X338,X337) = 'FieldDependsOnFCO'(X338,X337,select2(X336,select2(X336,X338,'FirstConsistentOwner'),exposeVersion)) ) )
        & ( sK51(X336,X337,X338) = select2(X336,X338,ownerFrame) )
        & ( sK52(X336,X337,X338) = select2(X336,X338,ownerRef) ) )
    & ( ownerFrame != 'System_Array' )
    & ( ownerRef != 'System_String' )
    & ( 'FirstConsistentOwner' != 'System_IConvertible' )
    & ! [X341: $int,X342: $int] :
        ( ( true_1 = select2(X341,X342,allocated) )
        | ( true_1 != 'IsAllocated'(X341,X342) ) )
    & ( 'System_IComparable_1___System_String' != 'System_IComparable' )
    & ( 'ArrayCategoryNonNullRef' != 'System_IConvertible' )
    & ( 'System_Int32' != 'System_IntPtr' )
    & ( sharingMode != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ( 'ArrayCategoryNonNullRef' != 'System_UInt32' )
    & ( 'NonNullFieldsAreInitialized' != stringLiteral0 )
    & ( 'ArrayCategoryInt' != 'System_Byte' )
    & ( 'SharingMode_Unshared' != ownerFrame )
    & ( localinv != 'System_Type' )
    & ( 'SharingMode_Unshared' != 'System_Char' )
    & ( 'SharingMode_Unshared' != ownerRef )
    & ( ownerRef != 'ArrayCategoryValue' )
    & ( 'SharingMode_Unshared' != 'System_UInt32' )
    & ( 'System_Boolean' != 'System_UIntPtr' )
    & ( ownerRef != 'Factorial' )
    & ( true_1 = x('System_Array','System_Object') )
    & ( inv != 'System_Int32' )
    & ( 'ArrayCategoryRef' != 'System_Char' )
    & ( 'SharingMode_LockProtected' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ( 'System_String' != stringLiteral0 )
    & ( 'System_String' != 'System_Int32' )
    & ( 'System_Boolean' != 'System_Int16' )
    & ( 'System_Int16' != 'System_UInt16' )
    & ( 'ArrayCategoryRef' != 'System_UInt16' )
    & ( 'System_String' != 'System_UInt16' )
    & ( 'System_Boolean' != 'System_ICloneable' )
    & ! [X343: $int,X344: $int,X345: $int,X346: $int] :
        ( ( true_1 != 'IsHeap'(X345) )
        | ( nullObject != select2(X345,X343,'AsNonNullRefField'(X344,X346)) )
        | ( nullObject = X343 )
        | ( ( true_1 != select2(X345,'BeingConstructed','NonNullFieldsAreInitialized') )
          & ( 'BeingConstructed' = X343 ) ) )
    & ( 'System_UInt16' != 'System_IComparable' )
    & ( 'PeerGroupPlaceholder' != 'System_Type' )
    & ( 'PeerGroupPlaceholder' != 'ArrayCategoryNonNullRef' )
    & ! [X347: $int,X348: $int] :
        ( ( 'PeerGroupPlaceholder' = select2(X348,'ClassRepr'(X347),ownerFrame) )
        | ( true_1 != 'IsHeap'(X348) ) )
    & ( exposeVersion != 'System_IComparable' )
    & ( 'System_UInt64' != 'System_ICloneable' )
    & ( ownerRef != 'System_Object' )
    & ( 'System_Object' != 'System_Char' )
    & ( inv != 'FirstConsistentOwner' )
    & ( 'System_UIntPtr' != stringLiteral0 )
    & ( 'System_Int16' != 'System_Collections_IEnumerable' )
    & ! [X349: $int,X350: $int,X351: $int] :
        ( ( ( true_1 = 'System_String_Equals_System_String_System_String'(X351,X350,X349) )
          | ( true_1 != 'StringEquals'(X350,X349) ) )
        & ( ( true_1 = 'StringEquals'(X350,X349) )
          | ( true_1 != 'System_String_Equals_System_String_System_String'(X351,X350,X349) ) )
        & ( ( X349 != X350 )
          | ( true_1 = 'StringEquals'(X350,X349) ) )
        & ( ( true_1 = 'System_String_Equals_System_String_System_String'(X351,X350,X349) )
          | ( true_1 != 'StringEquals'(X349,X350) ) )
        & ( ( true_1 = 'StringEquals'(X349,X350) )
          | ( true_1 != 'System_String_Equals_System_String_System_String'(X351,X350,X349) ) ) )
    & ( 'ArrayCategoryNonNullRef' != 'System_IntPtr' )
    & ( 'SharingMode_LockProtected' != 'ArrayCategoryRef' )
    & ( 'System_Array' != 'System_Int32' )
    & ( 'SharingMode_LockProtected' != 'System_Int32' )
    & ( 'ArrayCategoryNonNullRef' != 'System_Object' )
    & ( inv != 'System_UInt64' )
    & ( 'System_Int16' != 'System_ICloneable' )
    & ( 'FirstConsistentOwner' != 'System_Int64' )
    & ( ownerRef != 'System_IntPtr' )
    & ( inv != 'System_UInt16' )
    & ( 'System_IEquatable_1___System_String' != stringLiteral0 )
    & ( 'System_Boolean' != 'System_UInt16' )
    & ( 'ArrayCategoryInt' != 'NonNullFieldsAreInitialized' )
    & ( elements != 'System_Boolean' )
    & ( elements != 'System_SByte' )
    & ! [X352: $int,X353: $int,X354: $int] :
        ( ( 'ArrayCategoryNonNullRef' = 'ArrayCategory'(X352) )
        | ( true_1 != x(X352,'NonNullRefArray'(X354,X353)) ) )
    & ! [X355: $int,X356: $int] :
        ( ( nullObject = X355 )
        | ( true_1 != x(typeof(X355),'AsImmutable'(X356)) )
        | ( 'BeingConstructed' = X355 )
        | ! [X357: $int] :
            ( ( ( ! [X359: $int] :
                    ( ( X355 = X359 )
                    | ( 'AsOwner'(X355,select2(X357,X359,ownerRef)) != X355 )
                    | ( 'PeerGroupPlaceholder' != select2(X357,X359,ownerFrame) ) )
                & ( 'PeerGroupPlaceholder' = select2(X357,X355,ownerFrame) )
                & ( select2(X357,X355,inv) = sK53(X355,X357) )
                & ( 'AsOwner'(X355,select2(X357,X355,ownerRef)) = X355 )
                & ( select2(X357,X355,localinv) = sK53(X355,X357) ) )
              | ( true_1 != 'IsHeap'(X357) ) )
            & ( typeof(X355) = sK53(X355,X357) ) ) )
    & ( allocated != exposeVersion )
    & ( 'System_Collections_Generic_IEnumerable_1___System_Char' != 'System_IComparable_1___System_String' )
    & ( 'PeerGroupPlaceholder' != 'System_Boolean' )
    & ( 'SharingMode_Unshared' != 'System_Boolean' )
    & ( 'System_UInt32' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ( 'System_IEquatable_1___System_String' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ( 'SharingMode_LockProtected' != 'System_Array' )
    & ( ownerFrame != 'System_Byte' )
    & ( 'ArrayCategoryRef' != 'System_Object' )
    & ( true_1 = x('Factorial','Factorial') )
    & ( 'System_Byte' != 'System_Int16' )
    & ( 'ArrayCategoryRef' != 'System_Type' )
    & ( 'NonNullFieldsAreInitialized' != 'System_Int32' )
    & ( 'ArrayCategoryValue' != 'System_Int64' )
    & ( true_1 = x('System_IComparable_1___System_String','System_Object') )
    & ! [X360: $int,X361: $int] : ( 'Factorial_recursiveFac_System_Int32'(X360,X361) = 'Factorial_recursiveFac_System_Int32_1'(X361) )
    & ( 'System_Byte' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ( ownerFrame != 'System_Boolean' )
    & ( 'SharingMode_Unshared' != 'System_IComparable' )
    & ( 'System_Int32' != 'System_UIntPtr' )
    & ( ownerFrame != 'System_Int64' )
    & ( 'ArrayCategoryNonNullRef' != 'System_Collections_IEnumerable' )
    & ( 'System_UIntPtr' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ! [X362: $int] :
        ( ( ( true_1 = 'InRange'(X362,'System_Int64') )
          | $less(int_9223372036854775807,X362)
          | $less(X362,int_m9223372036854775808) )
        & ( ( ~ $less(int_9223372036854775807,X362)
            & ~ $less(X362,int_m9223372036854775808) )
          | ( true_1 != 'InRange'(X362,'System_Int64') ) ) )
    & ( 'System_UIntPtr' != 'Factorial' )
    & ( 'System_Int64' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ( 'System_UInt16' != 'Factorial' )
    & ( 'System_UInt32' != 'System_ICloneable' )
    & ( 'System_String' != 'System_UInt32' )
    & ( 'System_Array' != 'System_ICloneable' )
    & ( 'System_Array' != 'System_Object' )
    & ! [X363: $int,X364: $int] : ( 'ElementType'('IntArray'(X364,X363)) = X364 )
    & ( localinv != 'SharingMode_LockProtected' )
    & ! [X365: $int,X366: $int,X367: $int,X368: $int] :
        ( ( true_1 != 'IsHeap'(X368) )
        | ( true_1 = 'Is'(select2(X368,X367,'AsRefField'(X366,X365)),X365) ) )
    & ( localinv != 'FirstConsistentOwner' )
    & ( true_1 = 'IncludedInModifiesStar'(exposeVersion) )
    & ( 'System_Array' != 'System_String' )
    & ( 'System_Byte' != 'System_IConvertible' )
    & ( ownerFrame != stringLiteral0 )
    & ( 'System_Boolean' != 'Factorial' )
    & ( elements != 'System_IConvertible' )
    & ( true_1 = 'IsValueType'('System_UInt32') )
    & ( 'ArrayCategoryRef' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ( 'System_Object' != 'System_ICloneable' )
    & ( 'NonNullFieldsAreInitialized' != 'System_String' )
    & ( 'ArrayCategoryValue' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ( inv != 'System_Type' )
    & ( localinv != 'System_IEquatable_1___System_String' )
    & ( inv != 'System_IConvertible' )
    & ! [X369: $int] : ( true_1 = 'IsNotNull'('TypeObject'(X369),'System_Type') )
    & ( 'ArrayCategoryValue' != 'System_Array' )
    & ( 'System_Array' != 'System_IntPtr' )
    & ( 'ArrayCategoryRef' != 'System_Boolean' )
    & ( 'SharingMode_Unshared' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ( true_1 = x('System_String','System_ICloneable') )
    & ( 'System_UInt16' != 'System_Collections_IEnumerable' )
    & ( 'ArrayCategoryValue' != 'System_UInt16' )
    & ( 'System_IEquatable_1___System_String' != 'Factorial' )
    & ( 'System_UInt16' != 'System_UInt64' )
    & ! [X370: $int,X371: $int] : ~ $less('DimLength'(X370,X371),0)
    & ( sharingMode != stringLiteral0 )
    & ( 'System_IntPtr' != 'System_Collections_Generic_IEnumerable_1___System_Char' )
    & ( 'NonNullFieldsAreInitialized' != 'System_Collections_IEnumerable' )
    & ( 'System_Byte' != 'System_Collections_IEnumerable' )
    & ( 'System_UIntPtr' != 'System_IConvertible' )
    & ( 'PeerGroupPlaceholder' != 'System_UInt64' )
    & ( 'System_Object' != 'Factorial' )
    & ( sharingMode != 'FirstConsistentOwner' )
    & ! [X372: $int] :
        ( ( true_1 != 'IsValueType'(X372) )
        | ( ! [X373: $int] :
              ( ( true_1 != x(X372,X373) )
              | ( X372 = X373 ) )
          & ! [X374: $int] :
              ( ( X372 = X374 )
              | ( true_1 != x(X374,X372) ) ) ) )
    & ( ownerRef != 'System_Char' )
    & ( 'System_Boolean' != 'System_String' )
    & ( 'ArrayCategoryNonNullRef' != 'Factorial' )
    & ( 'System_ICloneable' != 'Factorial' )
    & ! [X375: $int] :
        ( ( ( true_1 = 'InRange'(X375,'System_UInt64') )
          | $less(int_18446744073709551615,X375)
          | $less(X375,0) )
        & ( ( ~ $less(int_18446744073709551615,X375)
            & ~ $less(X375,0) )
          | ( true_1 != 'InRange'(X375,'System_UInt64') ) ) ) ),
    inference(skolemize,[status(esa),new_symbols(skolem,[sK0,sK1,sK2,sK3,sK4,sK5,sK6,sK7,sK8,sK9,sK10,sK11,sK12,sK13,sK14,sK15,sK16,sK17,sK18,sK19,sK20,sK21,sK22,sK23,sK24,sK25,sK26,sK27,sK28,sK29,sK30,sK31,sK32,sK33,sK34,sK35,sK36,sK37,sK38,sK39,sK40,sK41,sK42,sK43,sK44,sK45,sK46,sK47,sK48,sK49,sK50,sK51,sK52,sK53]),skolemize(X0,sK0),skolemize(X1,sK1),skolemize(X18,sK2(X14,X15,X16,X17)),skolemize(X19,sK3(X14,X15,X16,X17)),skolemize(X22,sK4(X20,X21)),skolemize(X34,sK5(X32,X33)),skolemize(X45,sK6(X42,X43,X44)),skolemize(X56,sK7(X53,X54,X55)),skolemize(X63,sK8(X60,X61,X62)),skolemize(X64,sK9(X60,X61,X62)),skolemize(X67,sK10(X65,X66)),skolemize(X68,sK11(X65,X66)),skolemize(X69,sK12(X65,X66)),skolemize(X90,sK13(X88,X89)),skolemize(X92,sK14(X91)),skolemize(X95,sK15(X93,X94)),skolemize(X111,sK16(X109,X110)),skolemize(X125,sK17(X121,X122,X123,X124)),skolemize(X140,sK18(X137,X138,X139)),skolemize(X167,sK19(X163,X164,X165,X166)),skolemize(X171,sK20(X168,X169,X170)),skolemize(X174,sK21(X172,X173)),skolemize(X187,sK22(X184,X185,X186)),skolemize(X193,sK23(X188,X189,X190,X191,X192)),skolemize(X194,sK24(X188,X189,X190,X191,X192)),skolemize(X201,sK25(X198,X199,X200)),skolemize(X220,sK26(X217,X218,X219)),skolemize(X221,sK27(X217,X218,X219)),skolemize(X224,sK28(X222,X223)),skolemize(X230,sK29(X228,X229)),skolemize(X231,sK30(X228,X229)),skolemize(X232,sK31(X228,X229)),skolemize(X233,sK32(X228,X229)),skolemize(X234,sK33(X228,X229)),skolemize(X237,sK34(X235,X236)),skolemize(X241,sK35(X239,X240)),skolemize(X251,sK36(X249,X250)),skolemize(X256,sK37(X253,X254,X255)),skolemize(X260,sK38(X258,X259)),skolemize(X272,sK39(X269,X270,X271)),skolemize(X280,sK40(X277,X278,X279)),skolemize(X281,sK41(X277,X278,X279)),skolemize(X287,sK42(X285,X286)),skolemize(X292,sK43(X291)),skolemize(X298,sK44(X295,X296,X297)),skolemize(X302,sK45(X299,X300,X301)),skolemize(X310,sK46(X308,X309)),skolemize(X318,sK47(X316,X317)),skolemize(X322,sK48(X319,X320,X321)),skolemize(X325,sK49(X323,X324)),skolemize(X331,sK50(X329,X330)),skolemize(X339,sK51(X336,X337,X338)),skolemize(X340,sK52(X336,X337,X338)),skolemize(X358,sK53(X355,X357))],[f42]) ).

tff(f44,plain,
    ? [X1: $int,X2: $int,X0: $int] :
      ( ( typeof(this) = X1 )
      & ? [X3: $int,X4: $int] :
          ( ( X3 = select2('Heap',this,ownerFrame) )
          & ( X4 = select2('Heap',this,ownerRef) )
          & ? [X6: $int,X5: $int] :
              ( ( select2('Heap_0',this,ownerFrame) = X6 )
              & ( ( entry_correct = true_1 )
                | ( ( true_1 = select2('Heap',this,allocated) )
                  & ( 'IsHeap'('Heap') = true_1 )
                  & ( ( select2('Heap',X4,localinv) = 'BaseClass'(X3) )
                    | ( x(select2('Heap',X4,inv),X3) != true_1 )
                    | ( X3 = 'PeerGroupPlaceholder' ) )
                  & ( ( block4284_correct = true_1 )
                    | ( ( ( ! [X13: $int,X12: $int] :
                            ? [X14: $int,X15: $int] :
                              ( ( select2('Heap',X13,ownerFrame) = X15 )
                              & ( select2('Heap',X13,ownerRef) = X14 )
                              & ( ( true_1 != select2('Heap',X13,allocated) )
                                | ( select2('Heap_0',X13,X12) = select2('Heap',X13,X12) )
                                | ( nullObject = X13 )
                                | ( ( 'PeerGroupPlaceholder' != X15 )
                                  & ( 'BaseClass'(X15) != select2('Heap',X14,localinv) )
                                  & ( true_1 = x(select2('Heap',X14,inv),X15) ) )
                                | ( ( this = X13 )
                                  & ( true_1 = x('System_Object','DeclType'(X12)) ) )
                                | ( true_1 != 'IncludeInMainFrameCondition'(X12) ) ) )
                          & ( select2('Heap_0',this,localinv) = X1 )
                          & ( 'IsHeap'('Heap_0') = true_1 )
                          & ! [X10: $int] :
                            ? [X11: $int] :
                              ( ( ( select2('Heap',X11,exposeVersion) != select2('Heap_0',X11,exposeVersion) )
                                | ( select2('Heap_0',X10,'FirstConsistentOwner') = X11 ) )
                              & ( select2('Heap',X10,'FirstConsistentOwner') = X11 ) )
                          & ( X4 = X5 )
                          & ( select2('Heap_0',this,sharingMode) = 'SharingMode_Unshared' )
                          & ( ( ( this != nullObject )
                              & ( ( select2('Heap_0',this,inv) != 'System_Object' )
                                | ( ( select2('Heap_0',this,localinv) = X1 )
                                  & ( 'System_Object' = select2('Heap_0',this,inv) )
                                  & ( ? [X31: $int] :
                                      ! [X32: $int] :
                                        ( ( ( nullObject != X31 )
                                          & ( 'Factorial' = select2('Heap_0',X31,ownerFrame) )
                                          & ( true_1 = select2('Heap_0',X31,allocated) )
                                          & ( ( select2('Heap_0',X31,inv) != X32 )
                                            | ( select2('Heap_0',X31,localinv) != X32 ) )
                                          & ( this = select2('Heap_0',X31,ownerRef) ) )
                                        | ( typeof(X31) != X32 ) )
                                    | ( ( 'Heap_1' = store2('Heap_0',this,inv,'Factorial') )
                                      & ! [X21: $int] :
                                        ? [X22: $int] :
                                          ( ( ( true_1 != select2('Heap_0',X21,allocated) )
                                            | ( nullObject = X21 )
                                            | ( ( select2('Heap_0',X21,localinv) = X22 )
                                              & ( select2('Heap_0',X21,inv) = X22 ) )
                                            | ( this != select2('Heap_0',X21,ownerRef) )
                                            | ( 'Factorial' != select2('Heap_0',X21,ownerFrame) ) )
                                          & ( typeof(X21) = X22 ) )
                                      & ( true_1 != 'ReallyLastGeneratedExit_correct' )
                                      & ( ( ! [X27: $int,X28: $int] :
                                            ? [X30: $int,X29: $int] :
                                              ( ( select2('Heap',X28,ownerRef) = X29 )
                                              & ( select2('Heap',X28,ownerFrame) = X30 )
                                              & ( ( true_1 != select2('Heap',X28,allocated) )
                                                | ( nullObject = X28 )
                                                | ( ( select2('Heap',X29,localinv) != 'BaseClass'(X30) )
                                                  & ( true_1 = x(select2('Heap',X29,inv),X30) )
                                                  & ( 'PeerGroupPlaceholder' != X30 ) )
                                                | ( select2('Heap',X28,X27) = select2('Heap_1',X28,X27) )
                                                | ( true_1 != 'IncludeInMainFrameCondition'(X27) )
                                                | ( ( true_1 = x('Factorial','DeclType'(X27)) )
                                                  & ( this = X28 ) ) ) )
                                          & ( ( ( select2('Heap_1',this,sharingMode) = 'SharingMode_Unshared' )
                                              & ( ( X2 != X3 )
                                                | ( ( X2 = X3 )
                                                  & ( ( select2('Heap_1',this,inv) != 'Factorial' )
                                                    | ( ( true_1 = x(select2('Heap_1',X0,inv),X2) )
                                                      & ( select2('Heap_1',X0,localinv) != 'BaseClass'(X2) )
                                                      & ( 'PeerGroupPlaceholder' != X2 ) )
                                                    | ( select2('Heap_1',this,localinv) != X1 ) )
                                                  & ( X0 = X4 ) )
                                                | ( X0 != X4 ) ) )
                                            | ( select2('Heap_1',this,sharingMode) != 'SharingMode_Unshared' ) ) )
                                        | ? [X23: $int,X24: $int] :
                                          ! [X25: $int,X26: $int] :
                                            ( ( ( ( true_1 != x('Factorial','DeclType'(X23)) )
                                                | ( this != X24 ) )
                                              & ( true_1 = 'IncludeInMainFrameCondition'(X23) )
                                              & ( true_1 = select2('Heap',X24,allocated) )
                                              & ( nullObject != X24 )
                                              & ( ( 'PeerGroupPlaceholder' = X26 )
                                                | ( true_1 != x(select2('Heap',X25,inv),X26) )
                                                | ( select2('Heap',X25,localinv) = 'BaseClass'(X26) ) )
                                              & ( select2('Heap',X24,X23) != select2('Heap_1',X24,X23) ) )
                                            | ( select2('Heap',X24,ownerFrame) != X26 )
                                            | ( select2('Heap',X24,ownerRef) != X25 ) )
                                        | ( 'ReallyLastGeneratedExit_correct' = true_1 ) )
                                      & ( 'IsHeap'('Heap_1') = true_1 ) ) ) )
                                | ( select2('Heap_0',this,localinv) != X1 ) ) )
                            | ( this = nullObject ) )
                          & ( this != nullObject )
                          & ( select2('Heap_0',this,allocated) = true_1 )
                          & ( 'HeapSucc'('Heap','Heap_0') = true_1 )
                          & ! [X17: $int] :
                            ? [X18: $int] :
                              ( ( ( 'PeerGroupPlaceholder' = X18 )
                                | ( ( select2('Heap_0',X17,ownerRef) = select2('Heap',X17,ownerRef) )
                                  & ( select2('Heap_0',X17,ownerFrame) = X18 ) )
                                | ( true_1 != select2('Heap',X17,allocated) ) )
                              & ( select2('Heap',X17,ownerFrame) = X18 ) )
                          & ! [X19: $int] :
                              ( ( true_1 != select2('Heap',X19,allocated) )
                              | ( true_1 = select2('Heap_0',X19,allocated) ) )
                          & ( ( true_1 != x(select2('Heap_0',X5,inv),X6) )
                            | ( select2('Heap_0',X5,localinv) = 'BaseClass'(X6) )
                            | ( 'PeerGroupPlaceholder' = X6 ) )
                          & ( 'System_Object' = select2('Heap_0',this,inv) )
                          & ( ( select2('Heap_0','BeingConstructed','NonNullFieldsAreInitialized') = true_1 )
                            | ( true_1 != select2('Heap','BeingConstructed','NonNullFieldsAreInitialized') ) )
                          & ( ( select2('Heap','BeingConstructed','NonNullFieldsAreInitialized') = true_1 )
                            | ( true_1 != select2('Heap_0','BeingConstructed','NonNullFieldsAreInitialized') ) )
                          & ! [X8: $int] :
                            ? [X9: $int] :
                              ( ( typeof(X8) = X9 )
                              & ( ( nullObject = X8 )
                                | ( true_1 != select2('Heap_0',X8,allocated) )
                                | ( ( select2('Heap_0',X8,localinv) = X9 )
                                  & ( select2('Heap_0',X8,inv) = X9 ) )
                                | ( true_1 = select2('Heap',X8,allocated) ) ) )
                          & ( X3 = X6 )
                          & ! [X20: $int] :
                              ( ( this = X20 )
                              | ( select2('Heap_0',X20,sharingMode) = select2('Heap',X20,sharingMode) ) )
                          & ! [X16: $int] :
                              ( ( true_1 != select2('Heap',X16,allocated) )
                              | ( this = X16 )
                              | ( ( select2('Heap',X16,inv) = select2('Heap_0',X16,inv) )
                                & ( select2('Heap',X16,localinv) = select2('Heap_0',X16,localinv) ) ) ) )
                        | ( this = nullObject )
                        | ( block4301_correct = true_1 ) )
                      & ( true_1 != block4301_correct ) ) )
                  & ( 'System_Object' = select2('Heap',this,inv) )
                  & ( select2('Heap',this,localinv) = X1 )
                  & ( true_1 != block4284_correct )
                  & ! [X7: $int] :
                      ( ( select2('Heap',X7,ownerRef) != this )
                      | ( this = X7 ) )
                  & ( 'PurityAxiomsCanBeAssumed' = true_1 )
                  & ( 'PeerGroupPlaceholder' = X3 )
                  & ( this = X4 )
                  & ( 'BeingConstructed' = this )
                  & ( true_1 = 'IsNotNull'(this,'Factorial') ) ) )
              & ( true_1 != entry_correct )
              & ( select2('Heap_0',this,ownerRef) = X5 ) ) )
      & ( select2('Heap_1',this,ownerFrame) = X2 )
      & ( select2('Heap_1',this,ownerRef) = X0 ) ),
    inference(nnf_transformation,[],[f32]) ).

tff(f45,plain,
    ? [X1: $int,X2: $int,X0: $int] :
      ( ( typeof(this) = X1 )
      & ? [X3: $int,X4: $int] :
          ( ( X3 = select2('Heap',this,ownerFrame) )
          & ( X4 = select2('Heap',this,ownerRef) )
          & ? [X6: $int,X5: $int] :
              ( ( select2('Heap_0',this,ownerFrame) = X6 )
              & ( ( entry_correct = true_1 )
                | ( ( true_1 = select2('Heap',this,allocated) )
                  & ( 'IsHeap'('Heap') = true_1 )
                  & ( ( select2('Heap',X4,localinv) = 'BaseClass'(X3) )
                    | ( x(select2('Heap',X4,inv),X3) != true_1 )
                    | ( X3 = 'PeerGroupPlaceholder' ) )
                  & ( ( block4284_correct = true_1 )
                    | ( ( ( ! [X13: $int,X12: $int] :
                            ? [X14: $int,X15: $int] :
                              ( ( select2('Heap',X13,ownerFrame) = X15 )
                              & ( select2('Heap',X13,ownerRef) = X14 )
                              & ( ( true_1 != select2('Heap',X13,allocated) )
                                | ( select2('Heap_0',X13,X12) = select2('Heap',X13,X12) )
                                | ( nullObject = X13 )
                                | ( ( 'PeerGroupPlaceholder' != X15 )
                                  & ( 'BaseClass'(X15) != select2('Heap',X14,localinv) )
                                  & ( true_1 = x(select2('Heap',X14,inv),X15) ) )
                                | ( ( this = X13 )
                                  & ( true_1 = x('System_Object','DeclType'(X12)) ) )
                                | ( true_1 != 'IncludeInMainFrameCondition'(X12) ) ) )
                          & ( select2('Heap_0',this,localinv) = X1 )
                          & ( 'IsHeap'('Heap_0') = true_1 )
                          & ! [X10: $int] :
                            ? [X11: $int] :
                              ( ( ( select2('Heap',X11,exposeVersion) != select2('Heap_0',X11,exposeVersion) )
                                | ( select2('Heap_0',X10,'FirstConsistentOwner') = X11 ) )
                              & ( select2('Heap',X10,'FirstConsistentOwner') = X11 ) )
                          & ( X4 = X5 )
                          & ( select2('Heap_0',this,sharingMode) = 'SharingMode_Unshared' )
                          & ( ( ( this != nullObject )
                              & ( ( select2('Heap_0',this,inv) != 'System_Object' )
                                | ( ( select2('Heap_0',this,localinv) = X1 )
                                  & ( 'System_Object' = select2('Heap_0',this,inv) )
                                  & ( ? [X31: $int] :
                                      ! [X32: $int] :
                                        ( ( ( nullObject != X31 )
                                          & ( 'Factorial' = select2('Heap_0',X31,ownerFrame) )
                                          & ( true_1 = select2('Heap_0',X31,allocated) )
                                          & ( ( select2('Heap_0',X31,inv) != X32 )
                                            | ( select2('Heap_0',X31,localinv) != X32 ) )
                                          & ( this = select2('Heap_0',X31,ownerRef) ) )
                                        | ( typeof(X31) != X32 ) )
                                    | ( ( 'Heap_1' = store2('Heap_0',this,inv,'Factorial') )
                                      & ! [X21: $int] :
                                        ? [X22: $int] :
                                          ( ( ( true_1 != select2('Heap_0',X21,allocated) )
                                            | ( nullObject = X21 )
                                            | ( ( select2('Heap_0',X21,localinv) = X22 )
                                              & ( select2('Heap_0',X21,inv) = X22 ) )
                                            | ( this != select2('Heap_0',X21,ownerRef) )
                                            | ( 'Factorial' != select2('Heap_0',X21,ownerFrame) ) )
                                          & ( typeof(X21) = X22 ) )
                                      & ( true_1 != 'ReallyLastGeneratedExit_correct' )
                                      & ( ( ! [X27: $int,X28: $int] :
                                            ? [X30: $int,X29: $int] :
                                              ( ( select2('Heap',X28,ownerRef) = X29 )
                                              & ( select2('Heap',X28,ownerFrame) = X30 )
                                              & ( ( true_1 != select2('Heap',X28,allocated) )
                                                | ( nullObject = X28 )
                                                | ( ( select2('Heap',X29,localinv) != 'BaseClass'(X30) )
                                                  & ( true_1 = x(select2('Heap',X29,inv),X30) )
                                                  & ( 'PeerGroupPlaceholder' != X30 ) )
                                                | ( select2('Heap',X28,X27) = select2('Heap_1',X28,X27) )
                                                | ( true_1 != 'IncludeInMainFrameCondition'(X27) )
                                                | ( ( true_1 = x('Factorial','DeclType'(X27)) )
                                                  & ( this = X28 ) ) ) )
                                          & ( ( ( select2('Heap_1',this,sharingMode) = 'SharingMode_Unshared' )
                                              & ( ( X2 != X3 )
                                                | ( ( X2 = X3 )
                                                  & ( ( select2('Heap_1',this,inv) != 'Factorial' )
                                                    | ( ( true_1 = x(select2('Heap_1',X0,inv),X2) )
                                                      & ( select2('Heap_1',X0,localinv) != 'BaseClass'(X2) )
                                                      & ( 'PeerGroupPlaceholder' != X2 ) )
                                                    | ( select2('Heap_1',this,localinv) != X1 ) )
                                                  & ( X0 = X4 ) )
                                                | ( X0 != X4 ) ) )
                                            | ( select2('Heap_1',this,sharingMode) != 'SharingMode_Unshared' ) ) )
                                        | ? [X23: $int,X24: $int] :
                                          ! [X25: $int,X26: $int] :
                                            ( ( ( ( true_1 != x('Factorial','DeclType'(X23)) )
                                                | ( this != X24 ) )
                                              & ( true_1 = 'IncludeInMainFrameCondition'(X23) )
                                              & ( true_1 = select2('Heap',X24,allocated) )
                                              & ( nullObject != X24 )
                                              & ( ( 'PeerGroupPlaceholder' = X26 )
                                                | ( true_1 != x(select2('Heap',X25,inv),X26) )
                                                | ( select2('Heap',X25,localinv) = 'BaseClass'(X26) ) )
                                              & ( select2('Heap',X24,X23) != select2('Heap_1',X24,X23) ) )
                                            | ( select2('Heap',X24,ownerFrame) != X26 )
                                            | ( select2('Heap',X24,ownerRef) != X25 ) )
                                        | ( 'ReallyLastGeneratedExit_correct' = true_1 ) )
                                      & ( 'IsHeap'('Heap_1') = true_1 ) ) ) )
                                | ( select2('Heap_0',this,localinv) != X1 ) ) )
                            | ( this = nullObject ) )
                          & ( this != nullObject )
                          & ( select2('Heap_0',this,allocated) = true_1 )
                          & ( 'HeapSucc'('Heap','Heap_0') = true_1 )
                          & ! [X17: $int] :
                            ? [X18: $int] :
                              ( ( ( 'PeerGroupPlaceholder' = X18 )
                                | ( ( select2('Heap_0',X17,ownerRef) = select2('Heap',X17,ownerRef) )
                                  & ( select2('Heap_0',X17,ownerFrame) = X18 ) )
                                | ( true_1 != select2('Heap',X17,allocated) ) )
                              & ( select2('Heap',X17,ownerFrame) = X18 ) )
                          & ! [X19: $int] :
                              ( ( true_1 != select2('Heap',X19,allocated) )
                              | ( true_1 = select2('Heap_0',X19,allocated) ) )
                          & ( ( true_1 != x(select2('Heap_0',X5,inv),X6) )
                            | ( select2('Heap_0',X5,localinv) = 'BaseClass'(X6) )
                            | ( 'PeerGroupPlaceholder' = X6 ) )
                          & ( 'System_Object' = select2('Heap_0',this,inv) )
                          & ( ( select2('Heap_0','BeingConstructed','NonNullFieldsAreInitialized') = true_1 )
                            | ( true_1 != select2('Heap','BeingConstructed','NonNullFieldsAreInitialized') ) )
                          & ( ( select2('Heap','BeingConstructed','NonNullFieldsAreInitialized') = true_1 )
                            | ( true_1 != select2('Heap_0','BeingConstructed','NonNullFieldsAreInitialized') ) )
                          & ! [X8: $int] :
                            ? [X9: $int] :
                              ( ( typeof(X8) = X9 )
                              & ( ( nullObject = X8 )
                                | ( true_1 != select2('Heap_0',X8,allocated) )
                                | ( ( select2('Heap_0',X8,localinv) = X9 )
                                  & ( select2('Heap_0',X8,inv) = X9 ) )
                                | ( true_1 = select2('Heap',X8,allocated) ) ) )
                          & ( X3 = X6 )
                          & ! [X20: $int] :
                              ( ( this = X20 )
                              | ( select2('Heap_0',X20,sharingMode) = select2('Heap',X20,sharingMode) ) )
                          & ! [X16: $int] :
                              ( ( true_1 != select2('Heap',X16,allocated) )
                              | ( this = X16 )
                              | ( ( select2('Heap',X16,inv) = select2('Heap_0',X16,inv) )
                                & ( select2('Heap',X16,localinv) = select2('Heap_0',X16,localinv) ) ) ) )
                        | ( this = nullObject )
                        | ( block4301_correct = true_1 ) )
                      & ( true_1 != block4301_correct ) ) )
                  & ( 'System_Object' = select2('Heap',this,inv) )
                  & ( select2('Heap',this,localinv) = X1 )
                  & ( true_1 != block4284_correct )
                  & ! [X7: $int] :
                      ( ( select2('Heap',X7,ownerRef) != this )
                      | ( this = X7 ) )
                  & ( 'PurityAxiomsCanBeAssumed' = true_1 )
                  & ( 'PeerGroupPlaceholder' = X3 )
                  & ( this = X4 )
                  & ( 'BeingConstructed' = this )
                  & ( true_1 = 'IsNotNull'(this,'Factorial') ) ) )
              & ( true_1 != entry_correct )
              & ( select2('Heap_0',this,ownerRef) = X5 ) ) )
      & ( select2('Heap_1',this,ownerFrame) = X2 )
      & ( select2('Heap_1',this,ownerRef) = X0 ) ),
    inference(flattening,[],[f44]) ).

tff(f46,plain,
    ? [X0: $int,X1: $int,X2: $int] :
      ( ( typeof(this) = X0 )
      & ? [X3: $int,X4: $int] :
          ( ( X3 = select2('Heap',this,ownerFrame) )
          & ( X4 = select2('Heap',this,ownerRef) )
          & ? [X5: $int,X6: $int] :
              ( ( select2('Heap_0',this,ownerFrame) = X5 )
              & ( ( entry_correct = true_1 )
                | ( ( true_1 = select2('Heap',this,allocated) )
                  & ( 'IsHeap'('Heap') = true_1 )
                  & ( ( select2('Heap',X4,localinv) = 'BaseClass'(X3) )
                    | ( x(select2('Heap',X4,inv),X3) != true_1 )
                    | ( X3 = 'PeerGroupPlaceholder' ) )
                  & ( ( block4284_correct = true_1 )
                    | ( ( ( ! [X7: $int,X8: $int] :
                            ? [X9: $int,X10: $int] :
                              ( ( select2('Heap',X7,ownerFrame) = X10 )
                              & ( select2('Heap',X7,ownerRef) = X9 )
                              & ( ( true_1 != select2('Heap',X7,allocated) )
                                | ( select2('Heap',X7,X8) = select2('Heap_0',X7,X8) )
                                | ( nullObject = X7 )
                                | ( ( 'PeerGroupPlaceholder' != X10 )
                                  & ( select2('Heap',X9,localinv) != 'BaseClass'(X10) )
                                  & ( true_1 = x(select2('Heap',X9,inv),X10) ) )
                                | ( ( this = X7 )
                                  & ( true_1 = x('System_Object','DeclType'(X8)) ) )
                                | ( true_1 != 'IncludeInMainFrameCondition'(X8) ) ) )
                          & ( select2('Heap_0',this,localinv) = X0 )
                          & ( 'IsHeap'('Heap_0') = true_1 )
                          & ! [X11: $int] :
                            ? [X12: $int] :
                              ( ( ( select2('Heap',X12,exposeVersion) != select2('Heap_0',X12,exposeVersion) )
                                | ( select2('Heap_0',X11,'FirstConsistentOwner') = X12 ) )
                              & ( select2('Heap',X11,'FirstConsistentOwner') = X12 ) )
                          & ( X4 = X6 )
                          & ( select2('Heap_0',this,sharingMode) = 'SharingMode_Unshared' )
                          & ( ( ( this != nullObject )
                              & ( ( select2('Heap_0',this,inv) != 'System_Object' )
                                | ( ( select2('Heap_0',this,localinv) = X0 )
                                  & ( 'System_Object' = select2('Heap_0',this,inv) )
                                  & ( ? [X13: $int] :
                                      ! [X14: $int] :
                                        ( ( ( nullObject != X13 )
                                          & ( 'Factorial' = select2('Heap_0',X13,ownerFrame) )
                                          & ( true_1 = select2('Heap_0',X13,allocated) )
                                          & ( ( select2('Heap_0',X13,inv) != X14 )
                                            | ( select2('Heap_0',X13,localinv) != X14 ) )
                                          & ( this = select2('Heap_0',X13,ownerRef) ) )
                                        | ( typeof(X13) != X14 ) )
                                    | ( ( 'Heap_1' = store2('Heap_0',this,inv,'Factorial') )
                                      & ! [X15: $int] :
                                        ? [X16: $int] :
                                          ( ( ( true_1 != select2('Heap_0',X15,allocated) )
                                            | ( nullObject = X15 )
                                            | ( ( select2('Heap_0',X15,localinv) = X16 )
                                              & ( select2('Heap_0',X15,inv) = X16 ) )
                                            | ( this != select2('Heap_0',X15,ownerRef) )
                                            | ( 'Factorial' != select2('Heap_0',X15,ownerFrame) ) )
                                          & ( typeof(X15) = X16 ) )
                                      & ( true_1 != 'ReallyLastGeneratedExit_correct' )
                                      & ( ( ! [X17: $int,X18: $int] :
                                            ? [X19: $int,X20: $int] :
                                              ( ( select2('Heap',X18,ownerRef) = X20 )
                                              & ( select2('Heap',X18,ownerFrame) = X19 )
                                              & ( ( true_1 != select2('Heap',X18,allocated) )
                                                | ( nullObject = X18 )
                                                | ( ( select2('Heap',X20,localinv) != 'BaseClass'(X19) )
                                                  & ( true_1 = x(select2('Heap',X20,inv),X19) )
                                                  & ( 'PeerGroupPlaceholder' != X19 ) )
                                                | ( select2('Heap_1',X18,X17) = select2('Heap',X18,X17) )
                                                | ( true_1 != 'IncludeInMainFrameCondition'(X17) )
                                                | ( ( true_1 = x('Factorial','DeclType'(X17)) )
                                                  & ( this = X18 ) ) ) )
                                          & ( ( ( select2('Heap_1',this,sharingMode) = 'SharingMode_Unshared' )
                                              & ( ( X1 != X3 )
                                                | ( ( X1 = X3 )
                                                  & ( ( select2('Heap_1',this,inv) != 'Factorial' )
                                                    | ( ( true_1 = x(select2('Heap_1',X2,inv),X1) )
                                                      & ( select2('Heap_1',X2,localinv) != 'BaseClass'(X1) )
                                                      & ( 'PeerGroupPlaceholder' != X1 ) )
                                                    | ( select2('Heap_1',this,localinv) != X0 ) )
                                                  & ( X2 = X4 ) )
                                                | ( X2 != X4 ) ) )
                                            | ( select2('Heap_1',this,sharingMode) != 'SharingMode_Unshared' ) ) )
                                        | ? [X21: $int,X22: $int] :
                                          ! [X23: $int,X24: $int] :
                                            ( ( ( ( true_1 != x('Factorial','DeclType'(X21)) )
                                                | ( this != X22 ) )
                                              & ( true_1 = 'IncludeInMainFrameCondition'(X21) )
                                              & ( true_1 = select2('Heap',X22,allocated) )
                                              & ( nullObject != X22 )
                                              & ( ( 'PeerGroupPlaceholder' = X24 )
                                                | ( true_1 != x(select2('Heap',X23,inv),X24) )
                                                | ( 'BaseClass'(X24) = select2('Heap',X23,localinv) ) )
                                              & ( select2('Heap_1',X22,X21) != select2('Heap',X22,X21) ) )
                                            | ( select2('Heap',X22,ownerFrame) != X24 )
                                            | ( select2('Heap',X22,ownerRef) != X23 ) )
                                        | ( 'ReallyLastGeneratedExit_correct' = true_1 ) )
                                      & ( 'IsHeap'('Heap_1') = true_1 ) ) ) )
                                | ( select2('Heap_0',this,localinv) != X0 ) ) )
                            | ( this = nullObject ) )
                          & ( this != nullObject )
                          & ( select2('Heap_0',this,allocated) = true_1 )
                          & ( 'HeapSucc'('Heap','Heap_0') = true_1 )
                          & ! [X25: $int] :
                            ? [X26: $int] :
                              ( ( ( 'PeerGroupPlaceholder' = X26 )
                                | ( ( select2('Heap_0',X25,ownerRef) = select2('Heap',X25,ownerRef) )
                                  & ( select2('Heap_0',X25,ownerFrame) = X26 ) )
                                | ( true_1 != select2('Heap',X25,allocated) ) )
                              & ( select2('Heap',X25,ownerFrame) = X26 ) )
                          & ! [X27: $int] :
                              ( ( true_1 != select2('Heap',X27,allocated) )
                              | ( true_1 = select2('Heap_0',X27,allocated) ) )
                          & ( ( true_1 != x(select2('Heap_0',X6,inv),X5) )
                            | ( select2('Heap_0',X6,localinv) = 'BaseClass'(X5) )
                            | ( 'PeerGroupPlaceholder' = X5 ) )
                          & ( 'System_Object' = select2('Heap_0',this,inv) )
                          & ( ( select2('Heap_0','BeingConstructed','NonNullFieldsAreInitialized') = true_1 )
                            | ( true_1 != select2('Heap','BeingConstructed','NonNullFieldsAreInitialized') ) )
                          & ( ( select2('Heap','BeingConstructed','NonNullFieldsAreInitialized') = true_1 )
                            | ( true_1 != select2('Heap_0','BeingConstructed','NonNullFieldsAreInitialized') ) )
                          & ! [X28: $int] :
                            ? [X29: $int] :
                              ( ( typeof(X28) = X29 )
                              & ( ( nullObject = X28 )
                                | ( true_1 != select2('Heap_0',X28,allocated) )
                                | ( ( select2('Heap_0',X28,localinv) = X29 )
                                  & ( select2('Heap_0',X28,inv) = X29 ) )
                                | ( true_1 = select2('Heap',X28,allocated) ) ) )
                          & ( X3 = X5 )
                          & ! [X30: $int] :
                              ( ( this = X30 )
                              | ( select2('Heap',X30,sharingMode) = select2('Heap_0',X30,sharingMode) ) )
                          & ! [X31: $int] :
                              ( ( true_1 != select2('Heap',X31,allocated) )
                              | ( this = X31 )
                              | ( ( select2('Heap_0',X31,inv) = select2('Heap',X31,inv) )
                                & ( select2('Heap_0',X31,localinv) = select2('Heap',X31,localinv) ) ) ) )
                        | ( this = nullObject )
                        | ( block4301_correct = true_1 ) )
                      & ( true_1 != block4301_correct ) ) )
                  & ( 'System_Object' = select2('Heap',this,inv) )
                  & ( select2('Heap',this,localinv) = X0 )
                  & ( true_1 != block4284_correct )
                  & ! [X32: $int] :
                      ( ( this != select2('Heap',X32,ownerRef) )
                      | ( this = X32 ) )
                  & ( 'PurityAxiomsCanBeAssumed' = true_1 )
                  & ( 'PeerGroupPlaceholder' = X3 )
                  & ( this = X4 )
                  & ( 'BeingConstructed' = this )
                  & ( true_1 = 'IsNotNull'(this,'Factorial') ) ) )
              & ( true_1 != entry_correct )
              & ( select2('Heap_0',this,ownerRef) = X6 ) ) )
      & ( select2('Heap_1',this,ownerFrame) = X1 )
      & ( select2('Heap_1',this,ownerRef) = X2 ) ),
    inference(rectify,[],[f45]) ).

tff(f47,plain,
    ( ( typeof(this) = sK54 )
    & ( select2('Heap',this,ownerFrame) = sK57 )
    & ( select2('Heap',this,ownerRef) = sK58 )
    & ( select2('Heap_0',this,ownerFrame) = sK59 )
    & ( ( entry_correct = true_1 )
      | ( ( true_1 = select2('Heap',this,allocated) )
        & ( 'IsHeap'('Heap') = true_1 )
        & ( ( select2('Heap',sK58,localinv) = 'BaseClass'(sK57) )
          | ( true_1 != x(select2('Heap',sK58,inv),sK57) )
          | ( 'PeerGroupPlaceholder' = sK57 ) )
        & ( ( block4284_correct = true_1 )
          | ( ( ( ! [X7: $int,X8: $int] :
                    ( ( select2('Heap',X7,ownerFrame) = sK62(X7,X8) )
                    & ( select2('Heap',X7,ownerRef) = sK61(X7,X8) )
                    & ( ( true_1 != select2('Heap',X7,allocated) )
                      | ( select2('Heap',X7,X8) = select2('Heap_0',X7,X8) )
                      | ( nullObject = X7 )
                      | ( ( 'PeerGroupPlaceholder' != sK62(X7,X8) )
                        & ( 'BaseClass'(sK62(X7,X8)) != select2('Heap',sK61(X7,X8),localinv) )
                        & ( true_1 = x(select2('Heap',sK61(X7,X8),inv),sK62(X7,X8)) ) )
                      | ( ( this = X7 )
                        & ( true_1 = x('System_Object','DeclType'(X8)) ) )
                      | ( true_1 != 'IncludeInMainFrameCondition'(X8) ) ) )
                & ( select2('Heap_0',this,localinv) = sK54 )
                & ( 'IsHeap'('Heap_0') = true_1 )
                & ! [X11: $int] :
                    ( ( ( select2('Heap_0',sK63(X11),exposeVersion) != select2('Heap',sK63(X11),exposeVersion) )
                      | ( sK63(X11) = select2('Heap_0',X11,'FirstConsistentOwner') ) )
                    & ( sK63(X11) = select2('Heap',X11,'FirstConsistentOwner') ) )
                & ( sK58 = sK60 )
                & ( select2('Heap_0',this,sharingMode) = 'SharingMode_Unshared' )
                & ( ( ( this != nullObject )
                    & ( ( select2('Heap_0',this,inv) != 'System_Object' )
                      | ( ( select2('Heap_0',this,localinv) = sK54 )
                        & ( 'System_Object' = select2('Heap_0',this,inv) )
                        & ( ! [X14: $int] :
                              ( ( ( nullObject != sK64 )
                                & ( 'Factorial' = select2('Heap_0',sK64,ownerFrame) )
                                & ( true_1 = select2('Heap_0',sK64,allocated) )
                                & ( ( select2('Heap_0',sK64,inv) != X14 )
                                  | ( select2('Heap_0',sK64,localinv) != X14 ) )
                                & ( this = select2('Heap_0',sK64,ownerRef) ) )
                              | ( typeof(sK64) != X14 ) )
                          | ( ( 'Heap_1' = store2('Heap_0',this,inv,'Factorial') )
                            & ! [X15: $int] :
                                ( ( ( true_1 != select2('Heap_0',X15,allocated) )
                                  | ( nullObject = X15 )
                                  | ( ( select2('Heap_0',X15,localinv) = sK65(X15) )
                                    & ( select2('Heap_0',X15,inv) = sK65(X15) ) )
                                  | ( this != select2('Heap_0',X15,ownerRef) )
                                  | ( 'Factorial' != select2('Heap_0',X15,ownerFrame) ) )
                                & ( typeof(X15) = sK65(X15) ) )
                            & ( true_1 != 'ReallyLastGeneratedExit_correct' )
                            & ( ( ! [X17: $int,X18: $int] :
                                    ( ( select2('Heap',X18,ownerRef) = sK67(X17,X18) )
                                    & ( select2('Heap',X18,ownerFrame) = sK66(X17,X18) )
                                    & ( ( true_1 != select2('Heap',X18,allocated) )
                                      | ( nullObject = X18 )
                                      | ( ( select2('Heap',sK67(X17,X18),localinv) != 'BaseClass'(sK66(X17,X18)) )
                                        & ( true_1 = x(select2('Heap',sK67(X17,X18),inv),sK66(X17,X18)) )
                                        & ( 'PeerGroupPlaceholder' != sK66(X17,X18) ) )
                                      | ( select2('Heap_1',X18,X17) = select2('Heap',X18,X17) )
                                      | ( true_1 != 'IncludeInMainFrameCondition'(X17) )
                                      | ( ( true_1 = x('Factorial','DeclType'(X17)) )
                                        & ( this = X18 ) ) ) )
                                & ( ( ( select2('Heap_1',this,sharingMode) = 'SharingMode_Unshared' )
                                    & ( ( sK57 != sK55 )
                                      | ( ( sK57 = sK55 )
                                        & ( ( select2('Heap_1',this,inv) != 'Factorial' )
                                          | ( ( true_1 = x(select2('Heap_1',sK56,inv),sK55) )
                                            & ( 'BaseClass'(sK55) != select2('Heap_1',sK56,localinv) )
                                            & ( 'PeerGroupPlaceholder' != sK55 ) )
                                          | ( select2('Heap_1',this,localinv) != sK54 ) )
                                        & ( sK58 = sK56 ) )
                                      | ( sK58 != sK56 ) ) )
                                  | ( select2('Heap_1',this,sharingMode) != 'SharingMode_Unshared' ) ) )
                              | ! [X23: $int,X24: $int] :
                                  ( ( ( ( true_1 != x('Factorial','DeclType'(sK68)) )
                                      | ( this != sK69 ) )
                                    & ( true_1 = 'IncludeInMainFrameCondition'(sK68) )
                                    & ( true_1 = select2('Heap',sK69,allocated) )
                                    & ( nullObject != sK69 )
                                    & ( ( 'PeerGroupPlaceholder' = X24 )
                                      | ( true_1 != x(select2('Heap',X23,inv),X24) )
                                      | ( 'BaseClass'(X24) = select2('Heap',X23,localinv) ) )
                                    & ( select2('Heap',sK69,sK68) != select2('Heap_1',sK69,sK68) ) )
                                  | ( select2('Heap',sK69,ownerFrame) != X24 )
                                  | ( select2('Heap',sK69,ownerRef) != X23 ) )
                              | ( 'ReallyLastGeneratedExit_correct' = true_1 ) )
                            & ( 'IsHeap'('Heap_1') = true_1 ) ) ) )
                      | ( select2('Heap_0',this,localinv) != sK54 ) ) )
                  | ( this = nullObject ) )
                & ( this != nullObject )
                & ( select2('Heap_0',this,allocated) = true_1 )
                & ( 'HeapSucc'('Heap','Heap_0') = true_1 )
                & ! [X25: $int] :
                    ( ( ( 'PeerGroupPlaceholder' = sK70(X25) )
                      | ( ( select2('Heap_0',X25,ownerRef) = select2('Heap',X25,ownerRef) )
                        & ( sK70(X25) = select2('Heap_0',X25,ownerFrame) ) )
                      | ( true_1 != select2('Heap',X25,allocated) ) )
                    & ( sK70(X25) = select2('Heap',X25,ownerFrame) ) )
                & ! [X27: $int] :
                    ( ( true_1 != select2('Heap',X27,allocated) )
                    | ( true_1 = select2('Heap_0',X27,allocated) ) )
                & ( ( true_1 != x(select2('Heap_0',sK60,inv),sK59) )
                  | ( 'BaseClass'(sK59) = select2('Heap_0',sK60,localinv) )
                  | ( 'PeerGroupPlaceholder' = sK59 ) )
                & ( 'System_Object' = select2('Heap_0',this,inv) )
                & ( ( select2('Heap_0','BeingConstructed','NonNullFieldsAreInitialized') = true_1 )
                  | ( true_1 != select2('Heap','BeingConstructed','NonNullFieldsAreInitialized') ) )
                & ( ( select2('Heap','BeingConstructed','NonNullFieldsAreInitialized') = true_1 )
                  | ( true_1 != select2('Heap_0','BeingConstructed','NonNullFieldsAreInitialized') ) )
                & ! [X28: $int] :
                    ( ( typeof(X28) = sK71(X28) )
                    & ( ( nullObject = X28 )
                      | ( true_1 != select2('Heap_0',X28,allocated) )
                      | ( ( select2('Heap_0',X28,localinv) = sK71(X28) )
                        & ( select2('Heap_0',X28,inv) = sK71(X28) ) )
                      | ( true_1 = select2('Heap',X28,allocated) ) ) )
                & ( sK57 = sK59 )
                & ! [X30: $int] :
                    ( ( this = X30 )
                    | ( select2('Heap',X30,sharingMode) = select2('Heap_0',X30,sharingMode) ) )
                & ! [X31: $int] :
                    ( ( true_1 != select2('Heap',X31,allocated) )
                    | ( this = X31 )
                    | ( ( select2('Heap_0',X31,inv) = select2('Heap',X31,inv) )
                      & ( select2('Heap_0',X31,localinv) = select2('Heap',X31,localinv) ) ) ) )
              | ( this = nullObject )
              | ( block4301_correct = true_1 ) )
            & ( true_1 != block4301_correct ) ) )
        & ( 'System_Object' = select2('Heap',this,inv) )
        & ( select2('Heap',this,localinv) = sK54 )
        & ( true_1 != block4284_correct )
        & ! [X32: $int] :
            ( ( this != select2('Heap',X32,ownerRef) )
            | ( this = X32 ) )
        & ( 'PurityAxiomsCanBeAssumed' = true_1 )
        & ( 'PeerGroupPlaceholder' = sK57 )
        & ( this = sK58 )
        & ( 'BeingConstructed' = this )
        & ( true_1 = 'IsNotNull'(this,'Factorial') ) ) )
    & ( true_1 != entry_correct )
    & ( select2('Heap_0',this,ownerRef) = sK60 )
    & ( select2('Heap_1',this,ownerFrame) = sK55 )
    & ( select2('Heap_1',this,ownerRef) = sK56 ) ),
    inference(skolemize,[status(esa),new_symbols(skolem,[sK54,sK55,sK56,sK57,sK58,sK59,sK60,sK61,sK62,sK63,sK64,sK65,sK66,sK67,sK68,sK69,sK70,sK71]),skolemize(X0,sK54),skolemize(X1,sK55),skolemize(X2,sK56),skolemize(X3,sK57),skolemize(X4,sK58),skolemize(X5,sK59),skolemize(X6,sK60),skolemize(X9,sK61(X7,X8)),skolemize(X10,sK62(X7,X8)),skolemize(X12,sK63(X11)),skolemize(X13,sK64),skolemize(X16,sK65(X15)),skolemize(X19,sK66(X17,X18)),skolemize(X20,sK67(X17,X18)),skolemize(X21,sK68),skolemize(X22,sK69),skolemize(X26,sK70(X25)),skolemize(X29,sK71(X28))],[f46]) ).

tff(f92,plain,
    ! [X373: $int,X372: $int] :
      ( ( X372 = X373 )
      | ( true_1 != 'IsValueType'(X372) )
      | ( true_1 != x(X372,X373) ) ),
    inference(cnf_transformation,[],[f43]) ).

tff(f289,plain,
    'System_Object' != 'System_Byte',
    inference(cnf_transformation,[],[f43]) ).

tff(f398,plain,
    ! [X291: $int] : ( sK43(X291) = 'BaseClass'(X291) ),
    inference(cnf_transformation,[],[f43]) ).

tff(f399,plain,
    ! [X291: $int] :
      ( ( sK43(X291) != X291 )
      | ( 'System_Object' = X291 ) ),
    inference(cnf_transformation,[],[f43]) ).

tff(f400,plain,
    ! [X291: $int] : ( true_1 = x(X291,sK43(X291)) ),
    inference(cnf_transformation,[],[f43]) ).

tff(f843,plain,
    true_1 = 'IsValueType'('System_Byte'),
    inference(cnf_transformation,[],[f43]) ).

tff(f1300,plain,
    true_1 != entry_correct,
    inference(cnf_transformation,[],[f47]) ).

tff(f1305,plain,
    ( ( true_1 = entry_correct )
    | ( true_1 = 'PurityAxiomsCanBeAssumed' ) ),
    inference(cnf_transformation,[],[f47]) ).

tff(f3573,plain,
    ! [X291: $int] : ( true_1 = x(X291,'BaseClass'(X291)) ),
    inference(forward_demodulation,[],[f400,f398]) ).

tff(f3585,plain,
    true_1 = 'PurityAxiomsCanBeAssumed',
    inference(forward_subsumption_resolution,[],[f1305,f1300]) ).

tff(f3604,plain,
    ! [X291: $int] : ( 'PurityAxiomsCanBeAssumed' = x(X291,'BaseClass'(X291)) ),
    inference(forward_demodulation,[],[f3573,f3585]) ).

tff(f3613,plain,
    ! [X291: $int] :
      ( ( 'BaseClass'(X291) != X291 )
      | ( 'System_Object' = X291 ) ),
    inference(forward_demodulation,[],[f399,f398]) ).

tff(f4031,plain,
    ! [X373: $int,X372: $int] :
      ( ( X372 = X373 )
      | ( 'PurityAxiomsCanBeAssumed' != 'IsValueType'(X372) )
      | ( true_1 != x(X372,X373) ) ),
    inference(forward_demodulation,[],[f92,f3585]) ).

tff(f4032,plain,
    ! [X373: $int,X372: $int] :
      ( ( 'PurityAxiomsCanBeAssumed' != 'IsValueType'(X372) )
      | ( 'PurityAxiomsCanBeAssumed' != x(X372,X373) )
      | ( X372 = X373 ) ),
    inference(forward_demodulation,[],[f4031,f3585]) ).

tff(f4134,plain,
    ! [X0: $int] :
      ( ( 'PurityAxiomsCanBeAssumed' != x('System_Byte',X0) )
      | ( 'System_Byte' = X0 )
      | ( true_1 != 'PurityAxiomsCanBeAssumed' ) ),
    inference(superposition,[],[f4032,f843]) ).

tff(f4135,plain,
    ! [X0: $int] :
      ( ( 'PurityAxiomsCanBeAssumed' != x('System_Byte',X0) )
      | ( 'System_Byte' = X0 ) ),
    inference(forward_subsumption_resolution,[],[f4134,f3585]) ).

tff(f5177,plain,
    ( ( 'System_Byte' = 'BaseClass'('System_Byte') )
    | ( 'PurityAxiomsCanBeAssumed' != 'PurityAxiomsCanBeAssumed' ) ),
    inference(superposition,[],[f4135,f3604]) ).

tff(f5178,plain,
    'System_Byte' = 'BaseClass'('System_Byte'),
    inference(trivial_inequality_removal,[],[f5177]) ).

tff(f5179,plain,
    ( ( 'System_Object' = 'System_Byte' )
    | ( 'System_Byte' != 'System_Byte' ) ),
    inference(superposition,[],[f3613,f5178]) ).

tff(f5181,plain,
    'System_Object' = 'System_Byte',
    inference(trivial_inequality_removal,[],[f5179]) ).

tff(f5182,plain,
    $false,
    inference(forward_subsumption_resolution,[],[f5181,f289]) ).

%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.02  % Problem  : SWW794_1 : TPTP v9.3.1. Released v7.0.0.
% 0.00/0.05  % Command  : run_vampire /export/starexec/sandbox/benchmark/theBenchmark.p 300 THM
% 0.07/0.18  % Computer : n006.cluster.edu
% 0.07/0.18  % Model    : x86_64 x86_64
% 0.07/0.18  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.07/0.18  % Memory   : 8046.5625MB
% 0.07/0.18  % OS       : Linux 6.8.0-71-generic
% 0.07/0.18  % CPULimit : 300
% 0.07/0.18  % WCLimit  : 300
% 0.07/0.18  % DateTime : Mon Sep 28 14:29:40 UTC 2026
% 0.07/0.19  % CPUTime  : 
% 0.07/0.19  Running run_vampire /export/starexec/sandbox/benchmark/theBenchmark.p 300 THM
% 0.07/0.22  Running first-order theorem proving
% 0.07/0.22  Running: /export/starexec/sandbox/solver/bin/vampire --input_syntax tptp --output_axiom_names on --mode casc -m 16384 --cores 7 -t 300 /export/starexec/sandbox/benchmark/theBenchmark.p
% 3.59/1.21  % (4008659)Detected arithmetic, will pick strategies from an ALASCA-aware ARI schedule.
% 3.59/1.21  % (4008677)dis+21_64_to=kbo:sil=128000:si=on:sp=weighted_frequency:uwa=alasca_can_abstract:random_seed=2293285219:i=4:rtra=on_2999 on theBenchmark for (2999ds/4Mi)
% 3.59/1.21  % (4008677)Instruction limit reached! 
% 3.59/1.21  % (4008677)------------------------------
% 3.59/1.21  % (4008677)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 3.59/1.21  % (4008677)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 3.59/1.21  % (4008677)CaDiCaL version: 2.1.3
% 3.59/1.21  % (4008677)Termination reason: Instruction limit
% 3.59/1.21  % (4008677)Termination phase: Including theory axioms
% 3.59/1.21  % (4008677)Time elapsed: 0.002 s
% 3.59/1.21  % (4008677)Peak memory usage: 86 MB
% 3.59/1.21  % (4008677)Instructions burned: 7 (million)
% 3.59/1.21  % (4008679)lrs+10_1_tgt=ground:sas=z3:si=on:random_seed=3309339911:i=33:rtra=on_2999 on theBenchmark for (2999ds/33Mi)
% 3.59/1.21  % (4008673)dis+1002_16:1_to=lpo:sil=64000:sas=z3:si=on:norm_ineq=on:gve=force:uwa=one_side_constant:random_seed=631461863:i=12:doe=on:rtra=on:gtg=exists_top:ss=axioms_2999 on theBenchmark for (2999ds/12Mi)
% 3.59/1.21  % (4008675)dis+10_3_slsqr=1,4:to=lpo:sil=128000:thi=strong:si=on:uwa=off:s2agt=20:slsqc=1:slsq=on:random_seed=3706718994:i=201:slsql=off:asg=cautious:rtra=on:gtg=all:ss=axioms:sgt=16_2999 on theBenchmark for (2999ds/201Mi)
% 3.59/1.21  % (4008674)dis+1002_1_to=kbo:sil=128000:tgt=ground:sas=z3:si=on:spb=units:tha=off:random_seed=3444364776:i=307:kws=precedence:nm=0:rtra=on_2999 on theBenchmark for (2999ds/307Mi)
% 3.59/1.21  % (4008676)lrs+1002_4:1_to=lpo:sil=64000:si=on:br=off:random_seed=9205081:s2a=on:i=7:rtra=on:inst=on_2999 on theBenchmark for (2999ds/7Mi)
% 3.59/1.21  % (4008678)lrs+10_1_to=lpo:sas=z3:si=on:tha=off:random_seed=568336551:i=46:rtra=on_2999 on theBenchmark for (2999ds/46Mi)
% 3.59/1.21  % (4008676)Instruction limit reached! 
% 3.59/1.21  % (4008676)------------------------------
% 3.59/1.21  % (4008676)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 3.59/1.21  % (4008676)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 3.59/1.21  % (4008676)CaDiCaL version: 2.1.3
% 3.59/1.21  % (4008676)Termination reason: Instruction limit
% 3.59/1.21  % (4008676)Termination phase: Property scanning
% 3.59/1.21  % (4008676)Time elapsed: 0.004 s
% 3.59/1.21  % (4008676)Peak memory usage: 85 MB
% 3.59/1.21  % (4008676)Instructions burned: 7 (million)
% 3.59/1.21  % (4008673)Instruction limit reached! 
% 3.59/1.21  % (4008673)------------------------------
% 3.59/1.21  % (4008673)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 3.59/1.21  % (4008673)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 3.59/1.21  % (4008673)CaDiCaL version: 2.1.3
% 3.59/1.21  % (4008673)Termination reason: Instruction limit
% 3.59/1.21  % (4008673)Termination phase: Property scanning
% 3.59/1.21  % (4008673)Time elapsed: 0.006 s
% 3.59/1.21  % (4008673)Peak memory usage: 85 MB
% 3.59/1.21  % (4008673)Instructions burned: 13 (million)
% 3.59/1.21  % (4008679)Instruction limit reached! 
% 3.59/1.21  % (4008679)------------------------------
% 3.59/1.21  % (4008679)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 3.59/1.21  % (4008679)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 3.59/1.21  % (4008679)CaDiCaL version: 2.1.3
% 3.59/1.21  % (4008679)Termination reason: Instruction limit
% 3.59/1.21  % (4008679)Termination phase: Equality resolution with deletion
% 3.59/1.21  % (4008679)Time elapsed: 0.018 s
% 3.59/1.21  % (4008679)Peak memory usage: 88 MB
% 3.59/1.21  % (4008679)Instructions burned: 35 (million)
% 3.59/1.21  % (4008678)Instruction limit reached! 
% 3.59/1.21  % (4008678)------------------------------
% 3.59/1.21  % (4008678)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 3.59/1.21  % (4008678)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 3.59/1.21  % (4008678)CaDiCaL version: 2.1.3
% 3.59/1.21  % (4008678)Termination reason: Instruction limit
% 3.59/1.21  % (4008678)Termination phase: Saturation
% 3.59/1.21  % (4008678)Time elapsed: 0.047 s
% 3.59/1.21  % (4008678)Peak memory usage: 113 MB
% 3.59/1.21  % (4008678)Instructions burned: 46 (million)
% 3.59/1.21  % (4008681)dis+11_3_anc=none:drc=ordering:si=on:urr=ec_only:bce=on:tha=off:sac=on:random_seed=2747602384:st=5:i=14:sd=10:rtra=on:ss=axioms:rawr=on_2998 on theBenchmark for (2998ds/14Mi)
% 3.59/1.21  % (4008681)Refutation not found, incomplete strategy
% 4.49/1.43  % (4008681)------------------------------
% 4.49/1.43  % (4008681)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 4.49/1.43  % (4008681)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 4.49/1.43  % (4008681)CaDiCaL version: 2.1.3
% 4.49/1.43  % (4008681)Termination reason: Refutation not found, incomplete strategy
% 4.49/1.43  % (4008681)Time elapsed: 0.003 s
% 4.49/1.43  % (4008681)Peak memory usage: 88 MB
% 4.49/1.43  % (4008681)Instructions burned: 10 (million)
% 4.49/1.43  % (4008675)Instruction limit reached! 
% 4.49/1.43  % (4008675)------------------------------
% 4.49/1.43  % (4008675)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 4.49/1.43  % (4008675)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 4.49/1.43  % (4008675)CaDiCaL version: 2.1.3
% 4.49/1.43  % (4008675)Termination reason: Instruction limit
% 4.49/1.43  % (4008675)Termination phase: Saturation
% 4.49/1.43  % (4008675)Time elapsed: 0.145 s
% 4.49/1.43  % (4008675)Peak memory usage: 119 MB
% 4.49/1.43  % (4008675)Instructions burned: 201 (million)
% 4.49/1.43  % (4008689)ott+21_1024_to=lakbo:sil=128000:bsd=on:si=on:alasca=on:uwa=alasca_main:nwc=0.5:random_seed=3920226210:cond=on:i=16:fgj=on:ep=RS:asg=force:nm=10:rtra=on:rawr=on_2998 on theBenchmark for (2998ds/16Mi)
% 4.49/1.43  % (4008690)dis+1011_1_prc=on:drc=off:si=on:sac=on:random_seed=3979294444:i=24:canc=force:rtra=on_2997 on theBenchmark for (2997ds/24Mi)
% 4.49/1.43  % (4008688)dis+1011_2:1_to=kbo:sil=128000:tgt=full:fde=none:si=on:norm_ineq=on:spb=goal_then_units:tha=some:nwc=2:sac=on:random_seed=2023302454:i=29:thsqd=64:nm=0:thsqc=8:rtra=on:thsq=on:ev=off_2998 on theBenchmark for (2998ds/29Mi)
% 4.49/1.43  % (4008689)Instruction limit reached! 
% 4.49/1.43  % (4008689)------------------------------
% 4.49/1.43  % (4008689)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 4.49/1.43  % (4008689)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 4.49/1.43  % (4008689)CaDiCaL version: 2.1.3
% 4.49/1.43  % (4008689)Termination reason: Instruction limit
% 4.49/1.43  % (4008689)Termination phase: Preprocessing 3
% 4.49/1.43  % (4008689)Time elapsed: 0.010 s
% 4.49/1.43  % (4008689)Peak memory usage: 87 MB
% 4.49/1.43  % (4008689)Instructions burned: 16 (million)
% 4.49/1.43  % (4008674)Instruction limit reached! 
% 4.49/1.43  % (4008674)------------------------------
% 4.49/1.43  % (4008674)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 4.49/1.43  % (4008674)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 4.49/1.43  % (4008674)CaDiCaL version: 2.1.3
% 4.49/1.43  % (4008674)Termination reason: Instruction limit
% 4.49/1.43  % (4008674)Termination phase: Saturation
% 4.49/1.43  % (4008674)Time elapsed: 0.174 s
% 4.49/1.43  % (4008674)Peak memory usage: 120 MB
% 4.49/1.43  % (4008674)Instructions burned: 307 (million)
% 4.49/1.43  % (4008690)Instruction limit reached! 
% 4.49/1.43  % (4008690)------------------------------
% 4.49/1.43  % (4008690)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 4.49/1.43  % (4008690)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 4.49/1.43  % (4008690)CaDiCaL version: 2.1.3
% 4.49/1.43  % (4008690)Termination reason: Instruction limit
% 4.49/1.43  % (4008690)Termination phase: Clausification
% 4.49/1.43  % (4008690)Time elapsed: 0.014 s
% 4.49/1.43  % (4008690)Peak memory usage: 87 MB
% 4.49/1.43  % (4008690)Instructions burned: 25 (million)
% 4.49/1.43  % (4008688)Instruction limit reached! 
% 4.49/1.43  % (4008688)------------------------------
% 4.49/1.43  % (4008688)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 4.49/1.43  % (4008688)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 4.49/1.43  % (4008688)CaDiCaL version: 2.1.3
% 4.49/1.43  % (4008688)Termination reason: Instruction limit
% 4.49/1.43  % (4008688)Termination phase: Property scanning
% 4.49/1.43  % (4008688)Time elapsed: 0.017 s
% 4.49/1.43  % (4008688)Peak memory usage: 87 MB
% 4.49/1.43  % (4008688)Instructions burned: 31 (million)
% 4.49/1.43  % (4008691)ott+1010_8_to=lpo:sil=128000:si=on:norm_ineq=on:sp=unary_frequency:sos=on:gve=cautious:spb=goal_then_units:uwa=alasca_main_floor:tha=some:random_seed=1106952138:i=27:canc=cautious:fsr=off:rtra=on_2997 on theBenchmark for (2997ds/27Mi)
% 4.49/1.43  % (4008691)Instruction limit reached! 
% 4.49/1.43  % (4008691)------------------------------
% 4.49/1.43  % (4008691)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 4.49/1.43  % (4008691)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 5.78/1.57  % (4008691)CaDiCaL version: 2.1.3
% 5.78/1.57  % (4008691)Termination reason: Instruction limit
% 5.78/1.57  % (4008691)Termination phase: Property scanning
% 5.78/1.57  % (4008691)Time elapsed: 0.016 s
% 5.78/1.57  % (4008691)Peak memory usage: 87 MB
% 5.78/1.57  % (4008691)Instructions burned: 28 (million)
% 5.78/1.57  % (4008681)------------------------------
% 5.78/1.57  % (4008681)------------------------------
% 5.78/1.57  % (4008693)dis+1002_24_to=kbo:sil=128000:si=on:random_seed=3279321765:i=85:gtgl=4:rtra=on:gtg=exists_sym_2996 on theBenchmark for (2996ds/85Mi)
% 5.78/1.57  % (4008700)dis+1010_128_isp=bottom:to=lpo:thi=overlap:prc=on:sas=z3:si=on:fd=preordered:random_seed=4125824287:i=66:thsqd=64:thsqc=16:rtra=on:thsq=on:ev=force_2996 on theBenchmark for (2996ds/66Mi)
% 5.78/1.57  % (4008699)lrs+10_2_to=lpo:sil=64000:si=on:sos=on:gve=force:lcm=reverse:uwa=one_side_interpreted:random_seed=2127937298:i=4:ep=RST:ins=2:rtra=on_2996 on theBenchmark for (2996ds/4Mi)
% 5.78/1.57  % (4008698)dis+1010_1_to=kbo:sil=128000:tgt=full:si=on:tha=off:random_seed=2885201793:i=181:rtra=on:ss=axioms:ev=cautious_2996 on theBenchmark for (2996ds/181Mi)
% 5.78/1.57  % (4008697)ott+1002_1_si=on:sp=occurrence:spb=goal:lcm=predicate:random_seed=694330309:i=2:bd=preordered:nm=2:ins=3:rtra=on:inst=on:tar=off_2996 on theBenchmark for (2996ds/2Mi)
% 5.78/1.57  % (4008697)Instruction limit reached! 
% 5.78/1.57  % (4008697)------------------------------
% 5.78/1.57  % (4008697)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 5.78/1.57  % (4008697)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 5.78/1.57  % (4008697)CaDiCaL version: 2.1.3
% 5.78/1.57  % (4008697)Termination reason: Instruction limit
% 5.78/1.57  % (4008697)Termination phase: Property scanning
% 5.78/1.57  % (4008697)Time elapsed: 0.002 s
% 5.78/1.57  % (4008697)Peak memory usage: 85 MB
% 5.78/1.57  % (4008697)Instructions burned: 3 (million)
% 5.78/1.57  % (4008699)Instruction limit reached! 
% 5.78/1.57  % (4008699)------------------------------
% 5.78/1.57  % (4008699)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 5.78/1.57  % (4008699)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 5.78/1.57  % (4008699)CaDiCaL version: 2.1.3
% 5.78/1.57  % (4008699)Termination reason: Instruction limit
% 5.78/1.57  % (4008699)Termination phase: Property scanning
% 5.78/1.57  % (4008699)Time elapsed: 0.003 s
% 5.78/1.57  % (4008699)Peak memory usage: 85 MB
% 5.78/1.57  % (4008699)Instructions burned: 5 (million)
% 5.78/1.57  % (4008698)Refutation not found, incomplete strategy
% 5.78/1.57  % (4008698)------------------------------
% 5.78/1.57  % (4008698)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 5.78/1.57  % (4008698)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 5.78/1.57  % (4008698)CaDiCaL version: 2.1.3
% 5.78/1.57  % (4008698)Termination reason: Refutation not found, incomplete strategy
% 5.78/1.57  % (4008698)Time elapsed: 0.005 s
% 5.78/1.57  % (4008698)Peak memory usage: 88 MB
% 5.78/1.57  % (4008698)Instructions burned: 9 (million)
% 5.78/1.57  % (4008693)Instruction limit reached! 
% 5.78/1.57  % (4008693)------------------------------
% 5.78/1.57  % (4008693)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 5.78/1.57  % (4008693)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 5.78/1.57  % (4008693)CaDiCaL version: 2.1.3
% 5.78/1.57  % (4008693)Termination reason: Instruction limit
% 5.78/1.57  % (4008693)Termination phase: Saturation
% 5.78/1.57  % (4008693)Time elapsed: 0.044 s
% 5.78/1.57  % (4008693)Peak memory usage: 91 MB
% 5.78/1.57  % (4008693)Instructions burned: 85 (million)
% 5.78/1.57  % (4008703)ott+1011_1_to=kbo:plsq=on:drc=off:si=on:plsqr=32,1:sp=const_frequency:sos=all:uwa=one_side_interpreted:sac=on:random_seed=1637431884:i=8:ep=RST:nm=16:rtra=on:gtg=exists_top_2995 on theBenchmark for (2995ds/8Mi)
% 5.78/1.57  % (4008703)Instruction limit reached! 
% 5.78/1.57  % (4008703)------------------------------
% 5.78/1.57  % (4008703)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 5.78/1.57  % (4008703)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 5.78/1.57  % (4008703)CaDiCaL version: 2.1.3
% 5.78/1.57  % (4008703)Termination reason: Instruction limit
% 5.78/1.57  % (4008703)Termination phase: Property scanning
% 5.78/1.57  % (4008703)Time elapsed: 0.002 s
% 5.78/1.57  % (4008703)Peak memory usage: 85 MB
% 5.78/1.57  % (4008703)Instructions burned: 8 (million)
% 6.45/1.79  % (4008702)lrs+10_1_thi=all:si=on:fd=off:random_seed=3321052914:i=53:rtra=on:gtg=all_2995 on theBenchmark for (2995ds/53Mi)
% 6.45/1.79  % (4008700)Instruction limit reached! 
% 6.45/1.79  % (4008700)------------------------------
% 6.45/1.79  % (4008700)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 6.45/1.79  % (4008700)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 6.45/1.79  % (4008700)CaDiCaL version: 2.1.3
% 6.45/1.79  % (4008700)Termination reason: Instruction limit
% 6.45/1.79  % (4008700)Termination phase: Saturation
% 6.45/1.79  % (4008700)Time elapsed: 0.077 s
% 6.45/1.79  % (4008700)Peak memory usage: 131 MB
% 6.45/1.79  % (4008700)Instructions burned: 67 (million)
% 6.45/1.79  % (4008702)Instruction limit reached! 
% 6.45/1.79  % (4008702)------------------------------
% 6.45/1.79  % (4008702)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 6.45/1.79  % (4008702)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 6.45/1.79  % (4008702)CaDiCaL version: 2.1.3
% 6.45/1.79  % (4008702)Termination reason: Instruction limit
% 6.45/1.79  % (4008702)Termination phase: Saturation
% 6.45/1.79  % (4008702)Time elapsed: 0.026 s
% 6.45/1.79  % (4008702)Peak memory usage: 89 MB
% 6.45/1.79  % (4008702)Instructions burned: 53 (million)
% 6.45/1.79  % (4008713)dis+10_1_si=on:random_seed=827426591:i=10:ep=R:rtra=on_2994 on theBenchmark for (2994ds/10Mi)
% 6.45/1.79  % (4008713)Instruction limit reached! 
% 6.45/1.79  % (4008713)------------------------------
% 6.45/1.79  % (4008713)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 6.45/1.79  % (4008713)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 6.45/1.79  % (4008713)CaDiCaL version: 2.1.3
% 6.45/1.79  % (4008713)Termination reason: Instruction limit
% 6.45/1.79  % (4008713)Termination phase: Preprocessing 1
% 6.45/1.79  % (4008713)Time elapsed: 0.003 s
% 6.45/1.79  % (4008713)Peak memory usage: 86 MB
% 6.45/1.79  % (4008713)Instructions burned: 12 (million)
% 6.45/1.79  % (4008709)lrs+10_1_to=lakbo:sil=128000:si=on:alasca=on:sp=occurrence:random_seed=69695741:st=3:i=2:rtra=on:ss=axioms_2994 on theBenchmark for (2994ds/2Mi)
% 6.45/1.79  % (4008710)dis+1002_1_to=lpo:sil=64000:si=on:flr=on:random_seed=2249848886:i=2:doe=on:canc=force:asg=cautious:rtra=on_2994 on theBenchmark for (2994ds/2Mi)
% 6.45/1.79  % (4008710)Instruction limit reached! 
% 6.45/1.79  % (4008710)------------------------------
% 6.45/1.79  % (4008710)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 6.45/1.79  % (4008710)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 6.45/1.79  % (4008710)CaDiCaL version: 2.1.3
% 6.45/1.79  % (4008710)Termination reason: Instruction limit
% 6.45/1.79  % (4008710)Termination phase: Property scanning
% 6.45/1.79  % (4008710)Time elapsed: 0.002 s
% 6.45/1.79  % (4008710)Peak memory usage: 85 MB
% 6.45/1.79  % (4008710)Instructions burned: 3 (million)
% 6.45/1.79  % (4008709)Instruction limit reached! 
% 6.45/1.79  % (4008709)------------------------------
% 6.45/1.79  % (4008709)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 6.45/1.79  % (4008709)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 6.45/1.79  % (4008709)CaDiCaL version: 2.1.3
% 6.45/1.79  % (4008709)Termination reason: Instruction limit
% 6.45/1.79  % (4008709)Termination phase: Property scanning
% 6.45/1.79  % (4008709)Time elapsed: 0.002 s
% 6.45/1.79  % (4008709)Peak memory usage: 85 MB
% 6.45/1.79  % (4008709)Instructions burned: 3 (million)
% 6.45/1.79  % (4008711)lrs+1011_16:1_to=kbo:sil=128000:sas=z3:si=on:sos=theory:erd=off:urr=full:random_seed=2445766259:i=127:doe=on:rtra=on_2994 on theBenchmark for (2994ds/127Mi)
% 6.45/1.79  % (4008716)dis+1011_5_anc=all:tgt=full:si=on:sp=const_frequency:spb=non_intro:fd=preordered:sac=on:random_seed=1178599130:avsq=on:i=35:doe=on:thsqd=64:nm=64:fsr=off:thsqc=32:rtra=on:tac=light:ss=included:thsq=on:ev=off:sgt=32_2994 on theBenchmark for (2994ds/35Mi)
% 6.45/1.79  % (4008715)lrs-1011_64_to=lpo:si=on:sp=unary_first:sos=on:br=off:random_seed=1577935761:i=26:canc=cautious:av=off:rtra=on_2994 on theBenchmark for (2994ds/26Mi)
% 6.45/1.79  % (4008715)Instruction limit reached! 
% 6.45/1.79  % (4008715)------------------------------
% 6.45/1.79  % (4008715)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 6.45/1.79  % (4008715)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 6.45/1.79  % (4008715)CaDiCaL version: 2.1.3
% 6.45/1.79  % (4008715)Termination reason: Instruction limit
% 9.87/2.11  % (4008715)Termination phase: Property scanning
% 9.87/2.11  % (4008715)Time elapsed: 0.015 s
% 9.87/2.11  % (4008715)Peak memory usage: 87 MB
% 9.87/2.11  % (4008715)Instructions burned: 27 (million)
% 9.87/2.11  % (4008716)Instruction limit reached! 
% 9.87/2.11  % (4008716)------------------------------
% 9.87/2.11  % (4008716)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 9.87/2.11  % (4008716)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 9.87/2.11  % (4008716)CaDiCaL version: 2.1.3
% 9.87/2.11  % (4008716)Termination reason: Instruction limit
% 9.87/2.11  % (4008716)Termination phase: Property scanning
% 9.87/2.11  % (4008716)Time elapsed: 0.019 s
% 9.87/2.11  % (4008716)Peak memory usage: 87 MB
% 9.87/2.11  % (4008716)Instructions burned: 35 (million)
% 9.87/2.11  % (4008718)ott+10_8:1_to=lpo:sil=128000:si=on:fs=off:spb=goal_then_units:uwa=alasca_main:random_seed=2396362241:i=2:fsr=off:rtra=on:inst=on_2993 on theBenchmark for (2993ds/2Mi)
% 9.87/2.11  % (4008698)------------------------------
% 9.87/2.11  % (4008698)------------------------------
% 9.87/2.11  % (4008718)Instruction limit reached! 
% 9.87/2.11  % (4008718)------------------------------
% 9.87/2.11  % (4008718)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 9.87/2.11  % (4008718)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 9.87/2.11  % (4008718)CaDiCaL version: 2.1.3
% 9.87/2.11  % (4008718)Termination reason: Instruction limit
% 9.87/2.11  % (4008718)Termination phase: Property scanning
% 9.87/2.11  % (4008718)Time elapsed: 0.001 s
% 9.87/2.11  % (4008718)Peak memory usage: 85 MB
% 9.87/2.11  % (4008718)Instructions burned: 2 (million)
% 9.87/2.11  % (4008711)Instruction limit reached! 
% 9.87/2.11  % (4008711)------------------------------
% 9.87/2.11  % (4008711)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 9.87/2.11  % (4008711)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 9.87/2.11  % (4008711)CaDiCaL version: 2.1.3
% 9.87/2.11  % (4008711)Termination reason: Instruction limit
% 9.87/2.11  % (4008711)Termination phase: Saturation
% 9.87/2.11  % (4008711)Time elapsed: 0.099 s
% 9.87/2.11  % (4008711)Peak memory usage: 119 MB
% 9.87/2.11  % (4008711)Instructions burned: 127 (million)
% 9.87/2.11  % (4008722)lrs-1011_1_to=kbo:sil=128000:prc=on:si=on:fs=off:tha=off:random_seed=2916945006:i=370:ep=RS:fsr=off:rtra=on_2993 on theBenchmark for (2993ds/370Mi)
% 9.87/2.11  % (4008721)dis+21_1_to=kbo:sil=128000:si=on:sp=weighted_frequency:uwa=off:s2agt=16:random_seed=3480884930:s2a=on:i=8:kws=inv_precedence:doe=on:rtra=on_2993 on theBenchmark for (2993ds/8Mi)
% 9.87/2.11  % (4008721)Instruction limit reached! 
% 9.87/2.11  % (4008721)------------------------------
% 9.87/2.11  % (4008721)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 9.87/2.11  % (4008721)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 9.87/2.11  % (4008721)CaDiCaL version: 2.1.3
% 9.87/2.11  % (4008721)Termination reason: Instruction limit
% 9.87/2.11  % (4008721)Termination phase: Property scanning
% 9.87/2.11  % (4008721)Time elapsed: 0.005 s
% 9.87/2.11  % (4008721)Peak memory usage: 86 MB
% 9.87/2.11  % (4008721)Instructions burned: 10 (million)
% 9.87/2.11  % (4008729)lrs+1010_5_to=lpo:sil=128000:si=on:sp=const_frequency:sos=theory:tha=off:random_seed=1918828032:i=10:rtra=on_2992 on theBenchmark for (2992ds/10Mi)
% 9.87/2.11  % (4008729)Instruction limit reached! 
% 9.87/2.11  % (4008729)------------------------------
% 9.87/2.11  % (4008729)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 9.87/2.11  % (4008729)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 9.87/2.11  % (4008729)CaDiCaL version: 2.1.3
% 9.87/2.11  % (4008729)Termination reason: Instruction limit
% 9.87/2.11  % (4008729)Termination phase: Naming
% 9.87/2.11  % (4008729)Time elapsed: 0.004 s
% 9.87/2.11  % (4008729)Peak memory usage: 86 MB
% 9.87/2.11  % (4008729)Instructions burned: 12 (million)
% 9.87/2.11  % (4008727)ott+1002_1_to=lpo:thi=overlap:prc=on:bsd=on:si=on:gve=cautious:thigen=on:tha=some:random_seed=4039985156:i=13:av=off:rtra=on:gtg=exists_sym:ev=force_2992 on theBenchmark for (2992ds/13Mi)
% 9.87/2.11  % (4008728)lrs+1002_1_to=lpo:sil=128000:sas=z3:si=on:sos=on:urr=on:tha=off:random_seed=2284721814:i=226:rtra=on:gtg=position:ss=axioms_2992 on theBenchmark for (2992ds/226Mi)
% 9.87/2.11  % (4008727)Instruction limit reached! 
% 9.87/2.11  % (4008727)------------------------------
% 9.87/2.11  % (4008727)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 9.87/2.11  % (4008727)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 9.87/2.11  % (4008727)CaDiCaL version: 2.1.3
% 9.87/2.11  % (4008727)Termination reason: Instruction limit
% 9.87/2.11  % (4008727)Termination phase: Property scanning
% 9.87/2.11  % (4008727)Time elapsed: 0.006 s
% 9.87/2.11  % (4008727)Peak memory usage: 85 MB
% 9.87/2.11  % (4008727)Instructions burned: 14 (million)
% 9.87/2.11  % (4008730)lrs+1002_1_to=lpo:thi=strong:sas=z3:si=on:sp=const_frequency:tha=off:random_seed=2780925105:i=71:rtra=on:gtg=exists_top_2992 on theBenchmark for (2992ds/71Mi)
% 9.87/2.11  % (4008731)lrs+1010_1_to=lpo:prlc=on:sil=128000:prc=on:drc=off:si=on:sp=const_max:thsqr=8,1:tha=some:nwc=5:random_seed=258052054:i=75:doe=on:thsqd=64:canc=force:thsqc=64:rtra=on:thsq=on_2992 on theBenchmark for (2992ds/75Mi)
% 9.87/2.11  % (4008728)Refutation not found, incomplete strategy
% 9.87/2.11  % (4008728)------------------------------
% 9.87/2.11  % (4008728)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 9.87/2.11  % (4008728)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 9.87/2.11  % (4008728)CaDiCaL version: 2.1.3
% 9.87/2.11  % (4008728)Termination reason: Refutation not found, incomplete strategy
% 9.87/2.11  % (4008728)Time elapsed: 0.032 s
% 9.87/2.11  % (4008728)Peak memory usage: 111 MB
% 9.87/2.11  % (4008728)Instructions burned: 18 (million)
% 9.87/2.11  % (4008731)Instruction limit reached! 
% 9.87/2.11  % (4008731)------------------------------
% 9.87/2.11  % (4008731)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 9.87/2.11  % (4008731)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 9.87/2.11  % (4008731)CaDiCaL version: 2.1.3
% 9.87/2.11  % (4008731)Termination reason: Instruction limit
% 9.87/2.11  % (4008731)Termination phase: Saturation
% 9.87/2.11  % (4008731)Time elapsed: 0.040 s
% 9.87/2.11  % (4008731)Peak memory usage: 91 MB
% 9.87/2.11  % (4008731)Instructions burned: 76 (million)
% 9.87/2.11  % (4008734)dis+1011_2:1_to=kbo:sil=128000:tgt=full:fde=none:si=on:norm_ineq=on:spb=goal_then_units:tha=some:nwc=2:sac=on:random_seed=3196820589:i=294:thsqd=64:nm=0:thsqc=8:rtra=on:thsq=on:ev=off_2991 on theBenchmark for (2991ds/294Mi)
% 9.87/2.11  % (4008730)Instruction limit reached! 
% 9.87/2.11  % (4008730)------------------------------
% 9.87/2.11  % (4008730)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 9.87/2.11  % (4008730)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 9.87/2.11  % (4008730)CaDiCaL version: 2.1.3
% 9.87/2.11  % (4008730)Termination reason: Instruction limit
% 9.87/2.11  % (4008730)Termination phase: Saturation
% 9.87/2.11  % (4008730)Time elapsed: 0.079 s
% 9.87/2.11  % (4008730)Peak memory usage: 131 MB
% 9.87/2.11  % (4008730)Instructions burned: 72 (million)
% 9.87/2.11  % (4008736)ott+21_1_to=kbo:tgt=full:sas=z3:si=on:tha=off:random_seed=1578111162:i=130:kws=inv_frequency:nm=0:rtra=on:gtg=exists_all_2991 on theBenchmark for (2991ds/130Mi)
% 9.87/2.11  % (4008722)Instruction limit reached! 
% 9.87/2.11  % (4008722)------------------------------
% 9.87/2.11  % (4008722)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 9.87/2.11  % (4008722)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 9.87/2.11  % (4008722)CaDiCaL version: 2.1.3
% 9.87/2.11  % (4008722)Termination reason: Instruction limit
% 9.87/2.11  % (4008722)Termination phase: Saturation
% 9.87/2.11  % (4008722)Time elapsed: 0.235 s
% 9.87/2.11  % (4008722)Peak memory usage: 96 MB
% 9.87/2.11  % (4008722)Instructions burned: 370 (million)
% 9.87/2.11  % (4008739)lrs+21_1_to=kbo:sil=64000:thi=all:sas=z3:si=on:spb=goal_then_units:tha=off:nwc=3:random_seed=3804329161:i=131:rtra=on_2990 on theBenchmark for (2990ds/131Mi)
% 9.87/2.11  % (4008736)Instruction limit reached! 
% 9.87/2.11  % (4008736)------------------------------
% 9.87/2.11  % (4008736)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 9.87/2.11  % (4008736)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 9.87/2.11  % (4008736)CaDiCaL version: 2.1.3
% 9.87/2.11  % (4008736)Termination reason: Instruction limit
% 9.87/2.11  % (4008736)Termination phase: Saturation
% 9.87/2.11  % (4008736)Time elapsed: 0.056 s
% 9.87/2.11  % (4008736)Peak memory usage: 89 MB
% 9.87/2.11  % (4008736)Instructions burned: 133 (million)
% 9.87/2.11  % (4008742)dis+1010_16_to=lpo:sil=64000:thi=strong:sas=z3:si=on:nwc=5:random_seed=1740890790:i=40:gtgl=2:rtra=on:gtg=exists_sym:ev=force_2990 on theBenchmark for (2990ds/40Mi)
% 9.87/2.11  % (4008734)First to succeed.
% 9.87/2.11  % (4008742)Instruction limit reached! 
% 9.87/2.11  % (4008742)------------------------------
% 9.87/2.11  % (4008742)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 9.87/2.11  % (4008742)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 9.87/2.11  % (4008742)CaDiCaL version: 2.1.3
% 9.87/2.11  % (4008742)Termination reason: Instruction limit
% 9.87/2.11  % (4008742)Termination phase: Property scanning
% 9.87/2.11  % (4008742)Time elapsed: 0.020 s
% 9.87/2.11  % (4008742)Peak memory usage: 87 MB
% 9.87/2.11  % (4008742)Instructions burned: 42 (million)
% 9.87/2.11  % (4008744)lrs+10_1_to=lpo:sil=64000:si=on:sos=on:urr=on:random_seed=3142892749:i=307:rtra=on:gtg=exists_top_2989 on theBenchmark for (2989ds/307Mi)
% 9.87/2.11  % (4008728)------------------------------
% 9.87/2.11  % (4008728)------------------------------
% 9.87/2.11  % (4008734)Solution written to "/export/starexec/sandbox/tmp/vampire-proof-4008659"
% 9.87/2.11  % (4008739)Instruction limit reached! 
% 9.87/2.11  % (4008739)------------------------------
% 9.87/2.11  % (4008739)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 9.87/2.11  % (4008739)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 9.87/2.11  % (4008739)CaDiCaL version: 2.1.3
% 9.87/2.11  % (4008739)Termination reason: Instruction limit
% 9.87/2.11  % (4008739)Termination phase: Saturation
% 9.87/2.11  % (4008739)Time elapsed: 0.119 s
% 9.87/2.11  % (4008739)Peak memory usage: 135 MB
% 9.87/2.11  % (4008739)Instructions burned: 133 (million)
% 9.87/2.11  % (4008746)ott+1010_3:1_to=kbo:sil=128000:thi=overlap:sas=z3:si=on:urr=on:tha=off:s2agt=32:random_seed=68358557:s2a=on:i=598:doe=on:bs=on:canc=cautious:fsr=off:rtra=on_2989 on theBenchmark for (2989ds/598Mi)
% 9.87/2.11  % (4008748)lrs+1011_5:1_to=kbo:sil=64000:thi=all:si=on:uwa=ground:br=off:random_seed=3356267973:i=131:canc=cautious:fsr=off:rtra=on_2989 on theBenchmark for (2989ds/131Mi)
% 9.87/2.11  % (4008750)dis+11_1_to=lpo:pum=on:sas=z3:si=on:sp=reverse_arity:sos=theory:thsqr=2,1:tha=some:s2agt=20:random_seed=2723238457:s2pl=no:i=259:sd=10:thsqd=64:thsqc=64:rtra=on:ss=axioms:thsq=on_2988 on theBenchmark for (2988ds/259Mi)
% 9.87/2.11  % (4008750)Refutation not found, incomplete strategy
% 9.87/2.11  % (4008750)------------------------------
% 9.87/2.11  % (4008750)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 9.87/2.11  % (4008750)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 9.87/2.11  % (4008750)CaDiCaL version: 2.1.3
% 9.87/2.11  % (4008750)Termination reason: Refutation not found, incomplete strategy
% 9.87/2.11  % (4008750)Time elapsed: 0.032 s
% 9.87/2.11  % (4008750)Peak memory usage: 112 MB
% 9.87/2.11  % (4008750)Instructions burned: 19 (million)
% 9.87/2.11  % (4008752)dis+10_1_si=on:random_seed=1601667319:s2a=on:i=1000:rtra=on:gtg=exists_all_2988 on theBenchmark for (2988ds/1000Mi)
% 9.87/2.11  % (4008744)Instruction limit reached! 
% 9.87/2.11  % (4008744)------------------------------
% 9.87/2.11  % (4008744)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 9.87/2.11  % (4008744)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 9.87/2.11  % (4008744)CaDiCaL version: 2.1.3
% 9.87/2.11  % (4008744)Termination reason: Instruction limit
% 9.87/2.11  % (4008744)Termination phase: Saturation
% 9.87/2.11  % (4008744)Time elapsed: 0.171 s
% 9.87/2.11  % (4008744)Peak memory usage: 94 MB
% 9.87/2.11  % (4008744)Instructions burned: 307 (million)
% 9.87/2.11  % (4008748)Instruction limit reached! 
% 9.87/2.11  % (4008748)------------------------------
% 9.87/2.11  % (4008748)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 9.87/2.11  % (4008748)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 9.87/2.11  % (4008748)CaDiCaL version: 2.1.3
% 9.87/2.11  % (4008748)Termination reason: Instruction limit
% 9.87/2.11  % (4008748)Termination phase: Saturation
% 9.87/2.11  % (4008748)Time elapsed: 0.085 s
% 9.87/2.11  % (4008748)Peak memory usage: 116 MB
% 9.87/2.11  % (4008748)Instructions burned: 131 (million)
% 9.87/2.11  % (4008753)dis+1010_1_to=lpo:sil=128000:tgt=full:si=on:sp=const_frequency:uwa=off:tha=off:nwc=1:random_seed=452394001:i=383:fsr=off:rtra=on:ev=force_2988 on theBenchmark for (2988ds/383Mi)
% 9.87/2.11  % (4008734)Refutation found. Thanks to Tanya!
% 9.87/2.11  % SZS status Unsatisfiable for theBenchmark
% 9.87/2.11  % SZS output start Proof for theBenchmark
% See solution above
% 10.66/2.31  % (4008734)------------------------------
% 10.66/2.31  % (4008734)Version: Vampire 5.0.1 (Release build, commit ea8961452 on 2026-07-16 15:14:34 +0200)
% 10.66/2.31  % (4008734)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 10.66/2.31  % (4008734)CaDiCaL version: 2.1.3
% 10.66/2.31  % (4008734)Termination reason: Refutation
% 10.66/2.31  % (4008734)Time elapsed: 0.198 s
% 10.66/2.31  % (4008734)Peak memory usage: 92 MB
% 10.66/2.31  % (4008734)Instructions burned: 394 (million)
% 10.66/2.31  % (4008734)------------------------------
% 10.66/2.31  % (4008734)------------------------------
% 10.66/2.31  % (4008659)Success in time 1.448 s
% 10.66/2.31  % Vampire exiting
%------------------------------------------------------------------------------