 ])
 
 private let oneConstructorWithArgumentModule = Module<Term>([], [
-	Declaration.Datatype("A", .Type(0), [
+	Declaration.Datatype("A", [
 		"a": .Argument(.BooleanType, const(.End)),
 	])
 ])
 
 private let multipleConstructorsWithArgumentsModule = Module<Term>([], [
-	Declaration.Datatype("A", .Type(0), [
+	Declaration.Datatype("A", [
 		"a": .Argument(.BooleanType, const(.End)),
 		"b": .Argument(.BooleanType, const(.End)),
 		"c": .Argument(.BooleanType, const(.End)),



private let selfModule = Module<Term>([], [
	Declaration.Datatype("Self", .Type(0), [
		"me": .End,
		"myself": .End,
		"I": .End,

])

private let multipleConstructorsWithMultipleArgumentsModule = Module<Term>([], [
	Declaration.Datatype("A", [
		"a": Telescope.Argument(.BooleanType) { a in .Argument(.BooleanType, const(.End)) },
		"b": Telescope.Argument(.BooleanType) { a in .Argument(.BooleanType, const(.End)) },
		"c": Telescope.Argument(.BooleanType) { a in .Argument(.BooleanType, const(.End)) },
