plutus icon indicating copy to clipboard operation
plutus copied to clipboard

SCP-3698

Open jmchapman opened this issue 2 years ago • 4 comments

investigate test coverage for NEAT.

jmchapman avatar Apr 18 '22 16:04 jmchapman

I changed one of the plutus-core-test tests to print out the terms it generates by creating an individual test for each term, labelled by the term.

If I turn up the genDepth for this test to 19 it seems to prevent plutus-core-test producing any output at all. i.e., not only does it seem to stop the test in question running it seems to block all the preceding tests too.

jmchapman avatar Apr 18 '22 16:04 jmchapman

Here are the tests generated that mention serialiseData:

      ApplyG (LamAbsG (VarG FZ)) (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (TyBuiltinG TyUnitG):                                                   OK
      ApplyG (LamAbsG (VarG FZ)) (ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (TyBuiltinG TyUnitG):                                              OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (ApplyG (BuiltinG SerialiseData) (ConstantG (TmDataG (I 0))) (TyBuiltinG TyDataG))) (TyFunG (TyBuiltinG TyByteStringG) (TyBuiltinG TyByteStringG)):                           OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (ApplyG (BuiltinG SerialiseData) (ErrorG (TyBuiltinG TyDataG)) (TyBuiltinG TyDataG))) (TyFunG (TyBuiltinG TyByteStringG) (TyBuiltinG TyByteStringG)):                         OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (TyAbsG (BuiltinG SerialiseData))) (TyFunG (TyBuiltinG TyByteStringG) (TyForallG (Type ()) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))):                        OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyBuiltinG TyByteStringG) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                                                       OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (TyAbsG (BuiltinG SerialiseData))) (TyFunG (TyBuiltinG TyIntegerG) (TyForallG (Type ()) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))):                           OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (TyAbsG (BuiltinG SerialiseData))) (TyFunG (TyBuiltinG TyBoolG) (TyForallG (Type ()) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))):                              OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (TyAbsG (BuiltinG SerialiseData))) (TyFunG (TyBuiltinG TyUnitG) (TyForallG (Type ()) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))):                              OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (TyAbsG (BuiltinG SerialiseData))) (TyFunG (TyBuiltinG TyStringG) (TyForallG (Type ()) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))):                            OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (TyAbsG (BuiltinG SerialiseData))) (TyFunG (TyBuiltinG TyDataG) (TyForallG (Type ()) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))):                              OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyBuiltinG TyIntegerG) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                                                          OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyBuiltinG TyBoolG) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                                                             OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyBuiltinG TyUnitG) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                                                             OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyBuiltinG TyStringG) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                                                           OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyBuiltinG TyDataG) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                                                             OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (ApplyG (BuiltinG SerialiseData) (ConstantG (TmDataG (I 0))) (TyBuiltinG TyDataG))) (TyFunG (TyBuiltinG TyIntegerG) (TyBuiltinG TyByteStringG)):                              OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (ApplyG (BuiltinG SerialiseData) (ErrorG (TyBuiltinG TyDataG)) (TyBuiltinG TyDataG))) (TyFunG (TyBuiltinG TyIntegerG) (TyBuiltinG TyByteStringG)):                            OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (ApplyG (BuiltinG SerialiseData) (ConstantG (TmDataG (I 0))) (TyBuiltinG TyDataG))) (TyFunG (TyBuiltinG TyBoolG) (TyBuiltinG TyByteStringG)):                                 OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (ApplyG (BuiltinG SerialiseData) (ErrorG (TyBuiltinG TyDataG)) (TyBuiltinG TyDataG))) (TyFunG (TyBuiltinG TyBoolG) (TyBuiltinG TyByteStringG)):                               OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (ApplyG (BuiltinG SerialiseData) (ConstantG (TmDataG (I 0))) (TyBuiltinG TyDataG))) (TyFunG (TyBuiltinG TyUnitG) (TyBuiltinG TyByteStringG)):                                 OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (ApplyG (BuiltinG SerialiseData) (ErrorG (TyBuiltinG TyDataG)) (TyBuiltinG TyDataG))) (TyFunG (TyBuiltinG TyUnitG) (TyBuiltinG TyByteStringG)):                               OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (ApplyG (BuiltinG SerialiseData) (ConstantG (TmDataG (I 0))) (TyBuiltinG TyDataG))) (TyFunG (TyBuiltinG TyStringG) (TyBuiltinG TyByteStringG)):                               OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (ApplyG (BuiltinG SerialiseData) (ErrorG (TyBuiltinG TyDataG)) (TyBuiltinG TyDataG))) (TyFunG (TyBuiltinG TyStringG) (TyBuiltinG TyByteStringG)):                             OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (ApplyG (BuiltinG SerialiseData) (VarG FZ) (TyBuiltinG TyDataG))) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                                                   OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (ApplyG (BuiltinG SerialiseData) (ConstantG (TmDataG (I 0))) (TyBuiltinG TyDataG))) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                                 OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (ApplyG (BuiltinG SerialiseData) (ErrorG (TyBuiltinG TyDataG)) (TyBuiltinG TyDataG))) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                               OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyForallG (Type ()) (TyVarG FZ)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                                                OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyForallG (Type ()) (TyBuiltinG TyByteStringG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                                 OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyForallG (Type ()) (TyBuiltinG TyIntegerG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                                    OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyForallG (Type ()) (TyBuiltinG TyBoolG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                                       OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyForallG (Type ()) (TyBuiltinG TyUnitG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                                       OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyForallG (Type ()) (TyBuiltinG TyStringG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                                     OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyForallG (Type ()) (TyBuiltinG TyDataG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                                       OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyForallG (Type ()) (TyFunG (TyVarG FZ) (TyVarG FZ))) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                           OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyForallG (Type ()) (TyForallG (Type ()) (TyVarG FZ))) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                          OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyForallG (Type ()) (TyForallG (Type ()) (TyVarG (FS FZ)))) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                     OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyByteStringG) (TyBuiltinG TyByteStringG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                   OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyByteStringG) (TyBuiltinG TyIntegerG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                      OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyByteStringG) (TyBuiltinG TyBoolG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                         OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyByteStringG) (TyBuiltinG TyUnitG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                         OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyByteStringG) (TyBuiltinG TyStringG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                       OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyByteStringG) (TyBuiltinG TyDataG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                         OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyIntegerG) (TyBuiltinG TyByteStringG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                      OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyIntegerG) (TyBuiltinG TyIntegerG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                         OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyIntegerG) (TyBuiltinG TyBoolG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                            OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyIntegerG) (TyBuiltinG TyUnitG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                            OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyIntegerG) (TyBuiltinG TyStringG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                          OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyIntegerG) (TyBuiltinG TyDataG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                            OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyBoolG) (TyBuiltinG TyByteStringG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                         OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyBoolG) (TyBuiltinG TyIntegerG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                            OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyBoolG) (TyBuiltinG TyBoolG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                               OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyBoolG) (TyBuiltinG TyUnitG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                               OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyBoolG) (TyBuiltinG TyStringG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                             OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyBoolG) (TyBuiltinG TyDataG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                               OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyUnitG) (TyBuiltinG TyByteStringG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                         OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyUnitG) (TyBuiltinG TyIntegerG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                            OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyUnitG) (TyBuiltinG TyBoolG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                               OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyUnitG) (TyBuiltinG TyUnitG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                               OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyUnitG) (TyBuiltinG TyStringG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                             OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyUnitG) (TyBuiltinG TyDataG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                               OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyStringG) (TyBuiltinG TyByteStringG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                       OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyStringG) (TyBuiltinG TyIntegerG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                          OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyStringG) (TyBuiltinG TyBoolG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                             OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyStringG) (TyBuiltinG TyUnitG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                             OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyStringG) (TyBuiltinG TyStringG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                           OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyStringG) (TyBuiltinG TyDataG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                             OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                         OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyIntegerG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                            OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyBoolG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                               OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyUnitG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                               OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyStringG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                             OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyDataG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                               OK
      ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyBuiltinG TyByteStringG) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                                                  OK
      ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyBuiltinG TyIntegerG) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                                                     OK
      ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyBuiltinG TyBoolG) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                                                        OK
      ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyBuiltinG TyUnitG) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                                                        OK
      ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyBuiltinG TyStringG) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                                                      OK
      ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyBuiltinG TyDataG) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                                                        OK
      ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (LamAbsG (ApplyG (BuiltinG SerialiseData) (VarG FZ) (TyBuiltinG TyDataG))) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                                              OK
      ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyForallG (Type ()) (TyVarG FZ)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                                           OK
      ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyForallG (Type ()) (TyBuiltinG TyByteStringG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                            OK
      ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyForallG (Type ()) (TyBuiltinG TyIntegerG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                               OK
      ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyForallG (Type ()) (TyBuiltinG TyBoolG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                                  OK
      ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyForallG (Type ()) (TyBuiltinG TyUnitG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                                  OK
      ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyForallG (Type ()) (TyBuiltinG TyStringG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                                OK
      ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (LamAbsG (BuiltinG SerialiseData)) (TyFunG (TyForallG (Type ()) (TyBuiltinG TyDataG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                                  OK
      ApplyG (LamAbsG (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))) (ConstantG (TmByteStringG "")) (TyBuiltinG TyByteStringG):                        OK
      ApplyG (LamAbsG (ApplyG (LamAbsG (VarG (FS FZ))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))) (ConstantG (TmUnitG ())) (TyBuiltinG TyUnitG):                                              OK
      ApplyG (LamAbsG (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))) (ConstantG (TmIntegerG 0)) (TyBuiltinG TyIntegerG):                               OK
      ApplyG (LamAbsG (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))) (ConstantG (TmBoolG False)) (TyBuiltinG TyBoolG):                                 OK
      ApplyG (LamAbsG (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))) (ConstantG (TmUnitG ())) (TyBuiltinG TyUnitG):                                    OK
      ApplyG (LamAbsG (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))) (ConstantG (TmStringG "")) (TyBuiltinG TyStringG):                                OK
      ApplyG (LamAbsG (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))) (ConstantG (TmDataG (I 0))) (TyBuiltinG TyDataG):                                 OK
      ApplyG (LamAbsG (ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))) (ConstantG (TmIntegerG 0)) (TyBuiltinG TyIntegerG):                          OK
      ApplyG (LamAbsG (ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))) (ConstantG (TmUnitG ())) (TyBuiltinG TyUnitG):                               OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                                                                                                     OK
      ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                                                                                                OK
      ApplyG (LamAbsG (ErrorG (TyAppG (TyLamG (TyVarG FZ)) (TyBuiltinG TyUnitG) (Type ())))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                                                        OK
      ApplyG (LamAbsG (ErrorG (TyAppG (TyLamG (TyBuiltinG TyUnitG)) (TyBuiltinG TyByteStringG) (Type ())))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                                         OK
      ApplyG (LamAbsG (ErrorG (TyAppG (TyLamG (TyBuiltinG TyUnitG)) (TyBuiltinG TyIntegerG) (Type ())))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                                            OK
      ApplyG (LamAbsG (ErrorG (TyAppG (TyLamG (TyBuiltinG TyUnitG)) (TyBuiltinG TyBoolG) (Type ())))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                                               OK
      ApplyG (LamAbsG (ErrorG (TyAppG (TyLamG (TyBuiltinG TyUnitG)) (TyBuiltinG TyUnitG) (Type ())))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                                               OK
      ApplyG (LamAbsG (ErrorG (TyAppG (TyLamG (TyBuiltinG TyUnitG)) (TyBuiltinG TyStringG) (Type ())))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                                             OK
      ApplyG (LamAbsG (ErrorG (TyAppG (TyLamG (TyBuiltinG TyUnitG)) (TyBuiltinG TyDataG) (Type ())))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                                               OK
      ApplyG (LamAbsG (ErrorG (TyAppG (TyLamG (TyBuiltinG TyUnitG)) (TyForallG (Type ()) (TyVarG FZ)) (Type ())))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                                  OK
      ApplyG (LamAbsG (ApplyG (LamAbsG (VarG FZ)) (ConstantG (TmUnitG ())) (TyBuiltinG TyUnitG))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                                                   OK
      ApplyG (LamAbsG (ApplyG (LamAbsG (VarG FZ)) (ErrorG (TyBuiltinG TyUnitG)) (TyBuiltinG TyUnitG))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                                              OK
      ApplyG (LamAbsG (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ConstantG (TmByteStringG "")) (TyBuiltinG TyByteStringG))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                        OK
      ApplyG (LamAbsG (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ConstantG (TmIntegerG 0)) (TyBuiltinG TyIntegerG))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                               OK
      ApplyG (LamAbsG (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ConstantG (TmBoolG False)) (TyBuiltinG TyBoolG))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                                 OK
      ApplyG (LamAbsG (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ConstantG (TmUnitG ())) (TyBuiltinG TyUnitG))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                                    OK
      ApplyG (LamAbsG (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ConstantG (TmStringG "")) (TyBuiltinG TyStringG))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                                OK
      ApplyG (LamAbsG (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ConstantG (TmDataG (I 0))) (TyBuiltinG TyDataG))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                                 OK
      ApplyG (LamAbsG (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ErrorG (TyBuiltinG TyByteStringG)) (TyBuiltinG TyByteStringG))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                   OK
      ApplyG (LamAbsG (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ErrorG (TyBuiltinG TyIntegerG)) (TyBuiltinG TyIntegerG))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                         OK
      ApplyG (LamAbsG (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ErrorG (TyBuiltinG TyBoolG)) (TyBuiltinG TyBoolG))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                               OK
      ApplyG (LamAbsG (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ErrorG (TyBuiltinG TyUnitG)) (TyBuiltinG TyUnitG))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                               OK
      ApplyG (LamAbsG (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ErrorG (TyBuiltinG TyStringG)) (TyBuiltinG TyStringG))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                           OK
      ApplyG (LamAbsG (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ErrorG (TyBuiltinG TyDataG)) (TyBuiltinG TyDataG))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                               OK
      ApplyG (LamAbsG (ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (ConstantG (TmIntegerG 0)) (TyBuiltinG TyIntegerG))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                          OK
      ApplyG (LamAbsG (ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (ConstantG (TmUnitG ())) (TyBuiltinG TyUnitG))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                               OK
      ApplyG (LamAbsG (TyInstG (TyAbsG (ConstantG (TmUnitG ()))) (TyBuiltinG TyUnitG) (TyBuiltinG TyByteStringG) (Type ()))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                        OK
      ApplyG (LamAbsG (TyInstG (TyAbsG (ConstantG (TmUnitG ()))) (TyBuiltinG TyUnitG) (TyBuiltinG TyIntegerG) (Type ()))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                           OK
      ApplyG (LamAbsG (TyInstG (TyAbsG (ConstantG (TmUnitG ()))) (TyBuiltinG TyUnitG) (TyBuiltinG TyBoolG) (Type ()))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                              OK
      ApplyG (LamAbsG (TyInstG (TyAbsG (ConstantG (TmUnitG ()))) (TyBuiltinG TyUnitG) (TyBuiltinG TyUnitG) (Type ()))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                              OK
      ApplyG (LamAbsG (TyInstG (TyAbsG (ConstantG (TmUnitG ()))) (TyBuiltinG TyUnitG) (TyBuiltinG TyStringG) (Type ()))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                            OK
      ApplyG (LamAbsG (TyInstG (TyAbsG (ConstantG (TmUnitG ()))) (TyBuiltinG TyUnitG) (TyBuiltinG TyDataG) (Type ()))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                              OK
      ApplyG (LamAbsG (TyInstG (TyAbsG (ErrorG (TyVarG FZ))) (TyVarG FZ) (TyBuiltinG TyUnitG) (Type ()))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                                           OK
      ApplyG (LamAbsG (TyInstG (ErrorG (TyForallG (Type ()) (TyVarG FZ))) (TyVarG FZ) (TyBuiltinG TyUnitG) (Type ()))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                              OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (TyAbsG (LamAbsG (BuiltinG SerialiseData))) (TyForallG (Type ()) (TyFunG (TyVarG FZ) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))):                                       OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (TyAbsG (LamAbsG (BuiltinG SerialiseData))) (TyForallG (Type ()) (TyFunG (TyBuiltinG TyByteStringG) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))):                        OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (TyAbsG (LamAbsG (BuiltinG SerialiseData))) (TyForallG (Type ()) (TyFunG (TyBuiltinG TyIntegerG) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))):                           OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (TyAbsG (LamAbsG (BuiltinG SerialiseData))) (TyForallG (Type ()) (TyFunG (TyBuiltinG TyBoolG) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))):                              OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (TyAbsG (LamAbsG (BuiltinG SerialiseData))) (TyForallG (Type ()) (TyFunG (TyBuiltinG TyUnitG) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))):                              OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (TyAbsG (LamAbsG (BuiltinG SerialiseData))) (TyForallG (Type ()) (TyFunG (TyBuiltinG TyStringG) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))):                            OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (TyAbsG (LamAbsG (BuiltinG SerialiseData))) (TyForallG (Type ()) (TyFunG (TyBuiltinG TyDataG) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))):                              OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (TyAbsG (BuiltinG SerialiseData)) (TyForallG (Type ()) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                                                                      OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (TyAbsG (TyAbsG (BuiltinG SerialiseData))) (TyForallG (Type ()) (TyForallG (Type ()) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))):                                       OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (TyAbsG (ApplyG (BuiltinG SerialiseData) (ConstantG (TmDataG (I 0))) (TyBuiltinG TyDataG))) (TyForallG (Type ()) (TyBuiltinG TyByteStringG)):                                          OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (TyAbsG (ApplyG (BuiltinG SerialiseData) (ErrorG (TyBuiltinG TyDataG)) (TyBuiltinG TyDataG))) (TyForallG (Type ()) (TyBuiltinG TyByteStringG)):                                        OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (WrapG (BuiltinG SerialiseData)) (TyIFixG (TyLamG (TyLamG (TyVarG FZ))) (Type ()) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                                           OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (WrapG (BuiltinG SerialiseData)) (TyIFixG (TyLamG (TyLamG (TyFunG (TyVarG FZ) (TyBuiltinG TyByteStringG)))) (Type ()) (TyBuiltinG TyDataG)):                                           OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (WrapG (BuiltinG SerialiseData)) (TyIFixG (TyLamG (TyLamG (TyFunG (TyBuiltinG TyDataG) (TyVarG FZ)))) (Type ()) (TyBuiltinG TyByteStringG)):                                           OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (WrapG (BuiltinG SerialiseData)) (TyIFixG (TyLamG (TyLamG (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))) (Type ()) (TyBuiltinG TyByteStringG)):                            OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (WrapG (BuiltinG SerialiseData)) (TyIFixG (TyLamG (TyLamG (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))) (Type ()) (TyBuiltinG TyIntegerG)):                               OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (WrapG (BuiltinG SerialiseData)) (TyIFixG (TyLamG (TyLamG (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))) (Type ()) (TyBuiltinG TyBoolG)):                                  OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (WrapG (BuiltinG SerialiseData)) (TyIFixG (TyLamG (TyLamG (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))) (Type ()) (TyBuiltinG TyUnitG)):                                  OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (WrapG (BuiltinG SerialiseData)) (TyIFixG (TyLamG (TyLamG (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))) (Type ()) (TyBuiltinG TyStringG)):                                OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (WrapG (BuiltinG SerialiseData)) (TyIFixG (TyLamG (TyLamG (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))) (Type ()) (TyBuiltinG TyDataG)):                                  OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ApplyG (BuiltinG SerialiseData) (ConstantG (TmDataG (I 0))) (TyBuiltinG TyDataG)) (TyBuiltinG TyByteStringG):                                                                         OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ApplyG (LamAbsG (ConstantG (TmByteStringG ""))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (TyBuiltinG TyByteStringG):                        OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ApplyG (LamAbsG (ErrorG (TyBuiltinG TyByteStringG))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (TyBuiltinG TyByteStringG):                   OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ApplyG (BuiltinG SerialiseData) (ErrorG (TyBuiltinG TyDataG)) (TyBuiltinG TyDataG)) (TyBuiltinG TyByteStringG):                                                                       OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ApplyG (BuiltinG SerialiseData) (ErrorG (TyAppG (TyLamG (TyVarG FZ)) (TyBuiltinG TyDataG) (Type ()))) (TyBuiltinG TyDataG)) (TyBuiltinG TyByteStringG):                               OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ApplyG (BuiltinG SerialiseData) (ApplyG (BuiltinG IData) (ConstantG (TmIntegerG 0)) (TyBuiltinG TyIntegerG)) (TyBuiltinG TyDataG)) (TyBuiltinG TyByteStringG):                        OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ApplyG (LamAbsG (ConstantG (TmIntegerG 0))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (TyBuiltinG TyIntegerG):                               OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ApplyG (LamAbsG (ErrorG (TyBuiltinG TyIntegerG))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (TyBuiltinG TyIntegerG):                         OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ApplyG (LamAbsG (ConstantG (TmBoolG False))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (TyBuiltinG TyBoolG):                                 OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (TyBuiltinG TyUnitG):                                    OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ApplyG (LamAbsG (ConstantG (TmStringG ""))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (TyBuiltinG TyStringG):                                OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ApplyG (LamAbsG (ConstantG (TmDataG (I 0)))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (TyBuiltinG TyDataG):                                 OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ApplyG (LamAbsG (ErrorG (TyBuiltinG TyBoolG))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (TyBuiltinG TyBoolG):                               OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (TyBuiltinG TyUnitG):                               OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ApplyG (LamAbsG (ErrorG (TyBuiltinG TyStringG))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (TyBuiltinG TyStringG):                           OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ApplyG (LamAbsG (ErrorG (TyBuiltinG TyDataG))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (TyBuiltinG TyDataG):                               OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ApplyG (LamAbsG (BuiltinG SerialiseData)) (ConstantG (TmByteStringG "")) (TyBuiltinG TyByteStringG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                        OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ApplyG (LamAbsG (BuiltinG SerialiseData)) (ConstantG (TmIntegerG 0)) (TyBuiltinG TyIntegerG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                               OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ApplyG (LamAbsG (BuiltinG SerialiseData)) (ConstantG (TmBoolG False)) (TyBuiltinG TyBoolG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                                 OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ApplyG (LamAbsG (BuiltinG SerialiseData)) (ConstantG (TmUnitG ())) (TyBuiltinG TyUnitG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                                    OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ApplyG (LamAbsG (BuiltinG SerialiseData)) (ConstantG (TmStringG "")) (TyBuiltinG TyStringG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                                OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ApplyG (LamAbsG (BuiltinG SerialiseData)) (ConstantG (TmDataG (I 0))) (TyBuiltinG TyDataG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                                 OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ApplyG (LamAbsG (BuiltinG SerialiseData)) (ErrorG (TyBuiltinG TyByteStringG)) (TyBuiltinG TyByteStringG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                   OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ApplyG (LamAbsG (BuiltinG SerialiseData)) (ErrorG (TyBuiltinG TyIntegerG)) (TyBuiltinG TyIntegerG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                         OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ApplyG (LamAbsG (BuiltinG SerialiseData)) (ErrorG (TyBuiltinG TyBoolG)) (TyBuiltinG TyBoolG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                               OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ApplyG (LamAbsG (BuiltinG SerialiseData)) (ErrorG (TyBuiltinG TyUnitG)) (TyBuiltinG TyUnitG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                               OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ApplyG (LamAbsG (BuiltinG SerialiseData)) (ErrorG (TyBuiltinG TyStringG)) (TyBuiltinG TyStringG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                           OK
      ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (ApplyG (LamAbsG (BuiltinG SerialiseData)) (ErrorG (TyBuiltinG TyDataG)) (TyBuiltinG TyDataG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                               OK
      ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (TyAbsG (LamAbsG (BuiltinG SerialiseData))) (TyForallG (Type ()) (TyFunG (TyVarG FZ) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))):                                  OK
      ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (TyAbsG (BuiltinG SerialiseData)) (TyForallG (Type ()) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                                                                 OK
      ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (TyAbsG (TyAbsG (BuiltinG SerialiseData))) (TyForallG (Type ()) (TyForallG (Type ()) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))):                                  OK
      ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (TyAbsG (ApplyG (BuiltinG SerialiseData) (ConstantG (TmDataG (I 0))) (TyBuiltinG TyDataG))) (TyForallG (Type ()) (TyBuiltinG TyByteStringG)):                                     OK
      ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (TyAbsG (ApplyG (BuiltinG SerialiseData) (ErrorG (TyBuiltinG TyDataG)) (TyBuiltinG TyDataG))) (TyForallG (Type ()) (TyBuiltinG TyByteStringG)):                                   OK
      ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (WrapG (BuiltinG SerialiseData)) (TyIFixG (TyLamG (TyLamG (TyVarG FZ))) (Type ()) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))):                                      OK
      ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (WrapG (BuiltinG SerialiseData)) (TyIFixG (TyLamG (TyLamG (TyFunG (TyVarG FZ) (TyBuiltinG TyByteStringG)))) (Type ()) (TyBuiltinG TyDataG)):                                      OK
      ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (WrapG (BuiltinG SerialiseData)) (TyIFixG (TyLamG (TyLamG (TyFunG (TyBuiltinG TyDataG) (TyVarG FZ)))) (Type ()) (TyBuiltinG TyByteStringG)):                                      OK
      ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (ApplyG (BuiltinG SerialiseData) (ConstantG (TmDataG (I 0))) (TyBuiltinG TyDataG)) (TyBuiltinG TyByteStringG):                                                                    OK
      ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (ApplyG (BuiltinG SerialiseData) (ErrorG (TyBuiltinG TyDataG)) (TyBuiltinG TyDataG)) (TyBuiltinG TyByteStringG):                                                                  OK
      ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (ApplyG (LamAbsG (ConstantG (TmIntegerG 0))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (TyBuiltinG TyIntegerG):                          OK
      ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (TyBuiltinG TyUnitG):                               OK
      ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (ApplyG (LamAbsG (BuiltinG SerialiseData)) (ConstantG (TmIntegerG 0)) (TyBuiltinG TyIntegerG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                          OK
      ApplyG (LamAbsG (ErrorG (TyBuiltinG TyUnitG))) (ApplyG (LamAbsG (BuiltinG SerialiseData)) (ConstantG (TmUnitG ())) (TyBuiltinG TyUnitG)) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                               OK
      ApplyG (LamAbsG (ApplyG (LamAbsG (VarG (FS FZ))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))) (ErrorG (TyBuiltinG TyUnitG)) (TyBuiltinG TyUnitG):                                         OK
      ApplyG (LamAbsG (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))) (ErrorG (TyBuiltinG TyByteStringG)) (TyBuiltinG TyByteStringG):                   OK
      ApplyG (LamAbsG (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))) (ErrorG (TyBuiltinG TyIntegerG)) (TyBuiltinG TyIntegerG):                         OK
      ApplyG (LamAbsG (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))) (ErrorG (TyBuiltinG TyBoolG)) (TyBuiltinG TyBoolG):                               OK
      ApplyG (LamAbsG (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))) (ErrorG (TyBuiltinG TyUnitG)) (TyBuiltinG TyUnitG):                               OK
      ApplyG (LamAbsG (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))) (ErrorG (TyBuiltinG TyStringG)) (TyBuiltinG TyStringG):                           OK
      ApplyG (LamAbsG (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))) (ErrorG (TyBuiltinG TyDataG)) (TyBuiltinG TyDataG):                               OK
      ApplyG (ApplyG (LamAbsG (LamAbsG (ConstantG (TmUnitG ())))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (ConstantG (TmByteStringG "")) (TyBuiltinG TyByteStringG):                        OK
      ApplyG (ApplyG (LamAbsG (LamAbsG (VarG FZ))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (ConstantG (TmUnitG ())) (TyBuiltinG TyUnitG):                                                   OK
      ApplyG (ApplyG (LamAbsG (LamAbsG (ConstantG (TmUnitG ())))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (ConstantG (TmIntegerG 0)) (TyBuiltinG TyIntegerG):                               OK
      ApplyG (ApplyG (LamAbsG (LamAbsG (ConstantG (TmUnitG ())))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (ConstantG (TmBoolG False)) (TyBuiltinG TyBoolG):                                 OK
      ApplyG (ApplyG (LamAbsG (LamAbsG (ConstantG (TmUnitG ())))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (ConstantG (TmUnitG ())) (TyBuiltinG TyUnitG):                                    OK
      ApplyG (ApplyG (LamAbsG (LamAbsG (ConstantG (TmUnitG ())))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (ConstantG (TmStringG "")) (TyBuiltinG TyStringG):                                OK
      ApplyG (ApplyG (LamAbsG (LamAbsG (ConstantG (TmUnitG ())))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (ConstantG (TmDataG (I 0))) (TyBuiltinG TyDataG):                                 OK
      ApplyG (ApplyG (LamAbsG (LamAbsG (ErrorG (TyBuiltinG TyUnitG)))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (ConstantG (TmIntegerG 0)) (TyBuiltinG TyIntegerG):                          OK
      ApplyG (ApplyG (LamAbsG (LamAbsG (ErrorG (TyBuiltinG TyUnitG)))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (ConstantG (TmUnitG ())) (TyBuiltinG TyUnitG):                               OK
      ApplyG (ErrorG (TyFunG (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)) (TyBuiltinG TyUnitG))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                                        OK
      ApplyG (ApplyG (LamAbsG (LamAbsG (VarG (FS FZ)))) (ConstantG (TmUnitG ())) (TyBuiltinG TyUnitG)) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                                              OK
      ApplyG (ApplyG (LamAbsG (LamAbsG (VarG (FS FZ)))) (ErrorG (TyBuiltinG TyUnitG)) (TyBuiltinG TyUnitG)) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                                         OK
      ApplyG (ApplyG (LamAbsG (LamAbsG (ConstantG (TmUnitG ())))) (ConstantG (TmByteStringG "")) (TyBuiltinG TyByteStringG)) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                        OK
      ApplyG (ApplyG (LamAbsG (LamAbsG (ConstantG (TmUnitG ())))) (ConstantG (TmIntegerG 0)) (TyBuiltinG TyIntegerG)) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                               OK
      ApplyG (ApplyG (LamAbsG (LamAbsG (ConstantG (TmUnitG ())))) (ConstantG (TmBoolG False)) (TyBuiltinG TyBoolG)) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                                 OK
      ApplyG (ApplyG (LamAbsG (LamAbsG (ConstantG (TmUnitG ())))) (ConstantG (TmUnitG ())) (TyBuiltinG TyUnitG)) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                                    OK
      ApplyG (ApplyG (LamAbsG (LamAbsG (ConstantG (TmUnitG ())))) (ConstantG (TmStringG "")) (TyBuiltinG TyStringG)) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                                OK
      ApplyG (ApplyG (LamAbsG (LamAbsG (ConstantG (TmUnitG ())))) (ConstantG (TmDataG (I 0))) (TyBuiltinG TyDataG)) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                                 OK
      ApplyG (ApplyG (LamAbsG (LamAbsG (ConstantG (TmUnitG ())))) (ErrorG (TyBuiltinG TyByteStringG)) (TyBuiltinG TyByteStringG)) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                   OK
      ApplyG (ApplyG (LamAbsG (LamAbsG (ConstantG (TmUnitG ())))) (ErrorG (TyBuiltinG TyIntegerG)) (TyBuiltinG TyIntegerG)) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                         OK
      ApplyG (ApplyG (LamAbsG (LamAbsG (ConstantG (TmUnitG ())))) (ErrorG (TyBuiltinG TyBoolG)) (TyBuiltinG TyBoolG)) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                               OK
      ApplyG (ApplyG (LamAbsG (LamAbsG (ConstantG (TmUnitG ())))) (ErrorG (TyBuiltinG TyUnitG)) (TyBuiltinG TyUnitG)) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                               OK
      ApplyG (ApplyG (LamAbsG (LamAbsG (ConstantG (TmUnitG ())))) (ErrorG (TyBuiltinG TyStringG)) (TyBuiltinG TyStringG)) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                           OK
      ApplyG (ApplyG (LamAbsG (LamAbsG (ConstantG (TmUnitG ())))) (ErrorG (TyBuiltinG TyDataG)) (TyBuiltinG TyDataG)) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                               OK
      ApplyG (ApplyG (LamAbsG (LamAbsG (ErrorG (TyBuiltinG TyUnitG)))) (ConstantG (TmIntegerG 0)) (TyBuiltinG TyIntegerG)) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                          OK
      ApplyG (ApplyG (LamAbsG (LamAbsG (ErrorG (TyBuiltinG TyUnitG)))) (ConstantG (TmUnitG ())) (TyBuiltinG TyUnitG)) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)):                               OK
      ApplyG (ErrorG (TyFunG (TyBuiltinG TyByteStringG) (TyBuiltinG TyUnitG))) (ApplyG (BuiltinG SerialiseData) (ConstantG (TmDataG (I 0))) (TyBuiltinG TyDataG)) (TyBuiltinG TyByteStringG):                                          OK
      ApplyG (ErrorG (TyFunG (TyBuiltinG TyByteStringG) (TyBuiltinG TyUnitG))) (ApplyG (BuiltinG SerialiseData) (ErrorG (TyBuiltinG TyDataG)) (TyBuiltinG TyDataG)) (TyBuiltinG TyByteStringG):                                        OK
      ApplyG (ApplyG (LamAbsG (LamAbsG (VarG FZ))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (ErrorG (TyBuiltinG TyUnitG)) (TyBuiltinG TyUnitG):                                              OK
      ApplyG (ApplyG (LamAbsG (LamAbsG (ConstantG (TmUnitG ())))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (ErrorG (TyBuiltinG TyByteStringG)) (TyBuiltinG TyByteStringG):                   OK
      ApplyG (ApplyG (LamAbsG (LamAbsG (ConstantG (TmUnitG ())))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (ErrorG (TyBuiltinG TyIntegerG)) (TyBuiltinG TyIntegerG):                         OK
      ApplyG (ApplyG (LamAbsG (LamAbsG (ConstantG (TmUnitG ())))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (ErrorG (TyBuiltinG TyBoolG)) (TyBuiltinG TyBoolG):                               OK
      ApplyG (ApplyG (LamAbsG (LamAbsG (ConstantG (TmUnitG ())))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (ErrorG (TyBuiltinG TyUnitG)) (TyBuiltinG TyUnitG):                               OK
      ApplyG (ApplyG (LamAbsG (LamAbsG (ConstantG (TmUnitG ())))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (ErrorG (TyBuiltinG TyStringG)) (TyBuiltinG TyStringG):                           OK
      ApplyG (ApplyG (LamAbsG (LamAbsG (ConstantG (TmUnitG ())))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (ErrorG (TyBuiltinG TyDataG)) (TyBuiltinG TyDataG):                               OK
      TyInstG (TyAbsG (ApplyG (LamAbsG (ErrorG (TyVarG FZ))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))) (TyVarG FZ) (TyBuiltinG TyUnitG) (Type ()):                                           OK
      TyInstG (ApplyG (LamAbsG (TyAbsG (ErrorG (TyVarG FZ)))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (TyVarG FZ) (TyBuiltinG TyUnitG) (Type ()):                                           OK
      TyInstG (ApplyG (LamAbsG (ErrorG (TyForallG (Type ()) (TyVarG FZ)))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (TyVarG FZ) (TyBuiltinG TyUnitG) (Type ()):                              OK
      TyInstG (TyAbsG (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))) (TyBuiltinG TyUnitG) (TyBuiltinG TyByteStringG) (Type ()):                        OK
      TyInstG (TyAbsG (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))) (TyBuiltinG TyUnitG) (TyBuiltinG TyIntegerG) (Type ()):                           OK
      TyInstG (TyAbsG (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))) (TyBuiltinG TyUnitG) (TyBuiltinG TyBoolG) (Type ()):                              OK
      TyInstG (TyAbsG (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))) (TyBuiltinG TyUnitG) (TyBuiltinG TyUnitG) (Type ()):                              OK
      TyInstG (TyAbsG (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))) (TyBuiltinG TyUnitG) (TyBuiltinG TyStringG) (Type ()):                            OK
      TyInstG (TyAbsG (ApplyG (LamAbsG (ConstantG (TmUnitG ()))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG)))) (TyBuiltinG TyUnitG) (TyBuiltinG TyDataG) (Type ()):                              OK
      TyInstG (ApplyG (LamAbsG (TyAbsG (ConstantG (TmUnitG ())))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (TyBuiltinG TyUnitG) (TyBuiltinG TyByteStringG) (Type ()):                        OK
      TyInstG (ApplyG (LamAbsG (TyAbsG (ConstantG (TmUnitG ())))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (TyBuiltinG TyUnitG) (TyBuiltinG TyIntegerG) (Type ()):                           OK
      TyInstG (ApplyG (LamAbsG (TyAbsG (ConstantG (TmUnitG ())))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (TyBuiltinG TyUnitG) (TyBuiltinG TyBoolG) (Type ()):                              OK
      TyInstG (ApplyG (LamAbsG (TyAbsG (ConstantG (TmUnitG ())))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (TyBuiltinG TyUnitG) (TyBuiltinG TyUnitG) (Type ()):                              OK
      TyInstG (ApplyG (LamAbsG (TyAbsG (ConstantG (TmUnitG ())))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (TyBuiltinG TyUnitG) (TyBuiltinG TyStringG) (Type ()):                            OK
      TyInstG (ApplyG (LamAbsG (TyAbsG (ConstantG (TmUnitG ())))) (BuiltinG SerialiseData) (TyFunG (TyBuiltinG TyDataG) (TyBuiltinG TyByteStringG))) (TyBuiltinG TyUnitG) (TyBuiltinG TyDataG) (Type ()):                              OK

jmchapman avatar Apr 18 '22 16:04 jmchapman

Maybe we just need to write the equivalent of sample for NEAT?

michaelpj avatar Apr 19 '22 09:04 michaelpj

good idea, that would be useful for this kind of debugging.

jmchapman avatar Apr 19 '22 10:04 jmchapman