Commits

camlspotter committed d4a1c6e

added a new tuple type encoding

  • Participants
  • Parent commits c753af1

Comments (0)

Files changed (13)

File phantom.annot

   Phantom_intf.Unknown.unknown
 )
 ident(
-  def unknown "phantom.ml" 8 163 165 "phantom.ml" 50 1948 1951
+  def unknown "phantom.ml" 8 163 165 "phantom.ml" 54 2040 2043
 )
 "phantom.ml" 6 117 133 "phantom.ml" 6 117 161
 type(
   'a -> 'a
 )
 ident(
-  def of_list "phantom.ml" 13 244 246 "phantom.ml" 50 1948 1951
+  def of_list "phantom.ml" 13 244 246 "phantom.ml" 54 2040 2043
 )
 "phantom.ml" 12 224 238 "phantom.ml" 12 224 239
 type(
   'b array -> 'b list
 )
 ident(
-  def of_array "phantom.ml" 14 275 277 "phantom.ml" 50 1948 1951
+  def of_array "phantom.ml" 14 275 277 "phantom.ml" 54 2040 2043
 )
 "phantom.ml" 13 244 261 "phantom.ml" 13 244 274
 type(
   'c -> 'c
 )
 ident(
-  def to_list "phantom.ml" 15 295 297 "phantom.ml" 50 1948 1951
+  def to_list "phantom.ml" 15 295 297 "phantom.ml" 54 2040 2043
 )
 "phantom.ml" 14 275 289 "phantom.ml" 14 275 290
 type(
   'd -> 'd
 )
 ident(
-  def to_unknown_list "phantom.ml" 16 323 325 "phantom.ml" 50 1948 1951
+  def to_unknown_list "phantom.ml" 16 323 325 "phantom.ml" 54 2040 2043
 )
 "phantom.ml" 15 295 317 "phantom.ml" 15 295 318
 type(
   'e list -> 'e array
 )
 ident(
-  def to_array "phantom.ml" 17 354 356 "phantom.ml" 50 1948 1951
+  def to_array "phantom.ml" 17 354 356 "phantom.ml" 54 2040 2043
 )
 "phantom.ml" 16 323 340 "phantom.ml" 16 323 353
 type(
   'f list -> 'f array
 )
 ident(
-  def to_unknown_array "phantom.ml" 18 393 395 "phantom.ml" 50 1948 1951
+  def to_unknown_array "phantom.ml" 18 393 395 "phantom.ml" 54 2040 2043
 )
 "phantom.ml" 17 354 379 "phantom.ml" 17 354 392
 type(
   'g list -> int
 )
 ident(
-  def length "phantom.ml" 20 422 424 "phantom.ml" 50 1948 1951
+  def length "phantom.ml" 20 422 424 "phantom.ml" 54 2040 2043
 )
 "phantom.ml" 18 393 408 "phantom.ml" 18 393 419
 type(
   'h -> 'h
 )
 ident(
-  def !< "phantom.ml" 21 439 441 "phantom.ml" 50 1948 1951
+  def !< "phantom.ml" 21 439 441 "phantom.ml" 54 2040 2043
 )
 "phantom.ml" 20 422 433 "phantom.ml" 20 422 434
 type(
   'i -> 'i
 )
 ident(
-  def !> "phantom.ml" 22 456 458 "phantom.ml" 50 1948 1951
+  def !> "phantom.ml" 22 456 458 "phantom.ml" 54 2040 2043
 )
 "phantom.ml" 21 439 450 "phantom.ml" 21 439 451
 type(
   'j -> 'j
 )
 ident(
-  def !? "phantom.ml" 23 473 475 "phantom.ml" 50 1948 1951
+  def !? "phantom.ml" 23 473 475 "phantom.ml" 54 2040 2043
 )
 "phantom.ml" 22 456 467 "phantom.ml" 22 456 468
 type(
   'k -> 'k
 )
 ident(
-  def unsafe "phantom.ml" 24 492 494 "phantom.ml" 50 1948 1951
+  def unsafe "phantom.ml" 24 492 494 "phantom.ml" 54 2040 2043
 )
 "phantom.ml" 23 473 486 "phantom.ml" 23 473 487
 type(
   'l -> 'l
 )
 ident(
-  def unsafe_list "phantom.ml" 25 516 518 "phantom.ml" 50 1948 1951
+  def unsafe_list "phantom.ml" 25 516 518 "phantom.ml" 54 2040 2043
 )
 "phantom.ml" 24 492 510 "phantom.ml" 24 492 511
 type(
   'm -> 'm
 )
 ident(
-  def magic "phantom.ml" 27 535 537 "phantom.ml" 50 1948 1951
+  def magic "phantom.ml" 27 535 537 "phantom.ml" 54 2040 2043
 )
 "phantom.ml" 25 516 528 "phantom.ml" 25 516 529
 type(
 ident(
   int_ref x "phantom.ml" 25 516 528 "phantom.ml" 25 516 529
 )
-"phantom.ml" 27 535 541 "phantom.ml" 27 535 543
+"phantom.ml" 27 535 541 "phantom.ml" 27 535 545
+type(
+  ('n list -> 'o) -> 'o
+)
+ident(
+  def list "phantom.ml" 28 555 557 "phantom.ml" 54 2040 2043
+)
+"phantom.ml" 27 535 546 "phantom.ml" 27 535 547
+type(
+  'n list -> 'o
+)
+ident(
+  def f "phantom.ml" 27 535 550 "phantom.ml" 27 535 554
+)
+"phantom.ml" 27 535 550 "phantom.ml" 27 535 551
+type(
+  'n list -> 'o
+)
+ident(
+  int_ref f "phantom.ml" 27 535 546 "phantom.ml" 27 535 547
+)
+"phantom.ml" 27 535 552 "phantom.ml" 27 535 554
 type(
   'n list
 )
-ident(
-  def c0 "phantom.ml" 28 549 551 "phantom.ml" 50 1948 1951
-)
-"phantom.ml" 27 535 546 "phantom.ml" 27 535 548
-type(
-  'n list
-)
-"phantom.ml" 28 549 555 "phantom.ml" 28 549 557
-type(
-  'o -> 'o list
-)
-ident(
-  def c1 "phantom.ml" 29 566 568 "phantom.ml" 50 1948 1951
-)
-"phantom.ml" 28 549 558 "phantom.ml" 28 549 559
+"phantom.ml" 27 535 550 "phantom.ml" 27 535 554
+call(
+  tail
+)
 type(
   'o
 )
+"phantom.ml" 28 555 561 "phantom.ml" 28 555 565
+type(
+  'p list -> 'p list
+)
 ident(
-  def t "phantom.ml" 28 549 562 "phantom.ml" 28 549 565
-)
-"phantom.ml" 28 549 563 "phantom.ml" 28 549 564
+  def null "phantom.ml" 29 577 579 "phantom.ml" 54 2040 2043
+)
+"phantom.ml" 28 555 568 "phantom.ml" 28 555 576
 type(
-  'o
+  'p list -> 'p list
 )
 ident(
-  int_ref t "phantom.ml" 28 549 558 "phantom.ml" 28 549 559
-)
-"phantom.ml" 28 549 562 "phantom.ml" 28 549 565
+  ext_ref List.rev
+)
+"phantom.ml" 29 577 583 "phantom.ml" 29 577 589
 type(
-  'o list
-)
-"phantom.ml" 29 566 572 "phantom.ml" 29 566 574
+  'q list -> 'q -> ('q list -> 'r) -> 'r
+)
+ident(
+  def ** "phantom.ml" 31 627 629 "phantom.ml" 54 2040 2043
+)
+"phantom.ml" 29 577 590 "phantom.ml" 29 577 592
 type(
-  'p -> 'p -> 'p list
+  'q list
 )
 ident(
-  def c2 "phantom.ml" 30 592 594 "phantom.ml" 50 1948 1951
-)
-"phantom.ml" 29 566 575 "phantom.ml" 29 566 577
-type(
-  'p
-)
-ident(
-  def t1 "phantom.ml" 29 566 578 "phantom.ml" 29 566 591
-)
-"phantom.ml" 29 566 578 "phantom.ml" 29 566 580
-type(
-  'p
-)
-ident(
-  def t2 "phantom.ml" 29 566 583 "phantom.ml" 29 566 591
-)
-"phantom.ml" 29 566 584 "phantom.ml" 29 566 586
-type(
-  'p
-)
-ident(
-  int_ref t1 "phantom.ml" 29 566 575 "phantom.ml" 29 566 577
-)
-"phantom.ml" 29 566 588 "phantom.ml" 29 566 590
-type(
-  'p
-)
-ident(
-  int_ref t2 "phantom.ml" 29 566 578 "phantom.ml" 29 566 580
-)
-"phantom.ml" 29 566 583 "phantom.ml" 29 566 591
-type(
-  'p list
-)
-"phantom.ml" 30 592 598 "phantom.ml" 30 592 600
-type(
-  'q -> 'q -> 'q -> 'q list
-)
-ident(
-  def c3 "phantom.ml" 31 625 627 "phantom.ml" 50 1948 1951
-)
-"phantom.ml" 30 592 601 "phantom.ml" 30 592 603
+  def st "phantom.ml" 29 577 593 "phantom.ml" 29 577 610
+)
+"phantom.ml" 29 577 593 "phantom.ml" 29 577 594
 type(
   'q
 )
 ident(
-  def t1 "phantom.ml" 30 592 604 "phantom.ml" 30 592 624
-)
-"phantom.ml" 30 592 604 "phantom.ml" 30 592 606
+  def t "phantom.ml" 29 577 595 "phantom.ml" 29 577 610
+)
+"phantom.ml" 29 577 595 "phantom.ml" 29 577 596
+type(
+  'q list -> 'r
+)
+ident(
+  def k "phantom.ml" 29 577 599 "phantom.ml" 29 577 610
+)
+"phantom.ml" 29 577 599 "phantom.ml" 29 577 600
+type(
+  'q list -> 'r
+)
+ident(
+  int_ref k "phantom.ml" 29 577 595 "phantom.ml" 29 577 596
+)
+"phantom.ml" 29 577 602 "phantom.ml" 29 577 603
 type(
   'q
 )
 ident(
-  def t2 "phantom.ml" 30 592 607 "phantom.ml" 30 592 624
-)
-"phantom.ml" 30 592 607 "phantom.ml" 30 592 609
-type(
-  'q
-)
-ident(
-  def t3 "phantom.ml" 30 592 612 "phantom.ml" 30 592 624
-)
-"phantom.ml" 30 592 613 "phantom.ml" 30 592 615
-type(
-  'q
-)
-ident(
-  int_ref t1 "phantom.ml" 30 592 601 "phantom.ml" 30 592 603
-)
-"phantom.ml" 30 592 617 "phantom.ml" 30 592 619
-type(
-  'q
-)
-ident(
-  int_ref t2 "phantom.ml" 30 592 604 "phantom.ml" 30 592 606
-)
-"phantom.ml" 30 592 621 "phantom.ml" 30 592 623
-type(
-  'q
-)
-ident(
-  int_ref t3 "phantom.ml" 30 592 607 "phantom.ml" 30 592 609
-)
-"phantom.ml" 30 592 612 "phantom.ml" 30 592 624
+  int_ref t "phantom.ml" 29 577 593 "phantom.ml" 29 577 594
+)
+"phantom.ml" 29 577 607 "phantom.ml" 29 577 609
 type(
   'q list
 )
-"phantom.ml" 31 625 631 "phantom.ml" 31 625 633
+ident(
+  int_ref st "phantom.ml" 29 577 590 "phantom.ml" 29 577 592
+)
+"phantom.ml" 29 577 601 "phantom.ml" 29 577 610
 type(
-  'r -> 'r -> 'r -> 'r -> 'r list
-)
-ident(
-  def c4 "phantom.ml" 32 665 667 "phantom.ml" 50 1948 1951
-)
-"phantom.ml" 31 625 634 "phantom.ml" 31 625 636
+  'q list
+)
+"phantom.ml" 29 577 599 "phantom.ml" 29 577 610
+call(
+  tail
+)
 type(
   'r
 )
-ident(
-  def t1 "phantom.ml" 31 625 637 "phantom.ml" 31 625 664
-)
-"phantom.ml" 31 625 637 "phantom.ml" 31 625 639
-type(
-  'r
-)
-ident(
-  def t2 "phantom.ml" 31 625 640 "phantom.ml" 31 625 664
-)
-"phantom.ml" 31 625 640 "phantom.ml" 31 625 642
-type(
-  'r
-)
-ident(
-  def t3 "phantom.ml" 31 625 643 "phantom.ml" 31 625 664
-)
-"phantom.ml" 31 625 643 "phantom.ml" 31 625 645
-type(
-  'r
-)
-ident(
-  def t4 "phantom.ml" 31 625 648 "phantom.ml" 31 625 664
-)
-"phantom.ml" 31 625 649 "phantom.ml" 31 625 651
-type(
-  'r
-)
-ident(
-  int_ref t1 "phantom.ml" 31 625 634 "phantom.ml" 31 625 636
-)
-"phantom.ml" 31 625 653 "phantom.ml" 31 625 655
-type(
-  'r
-)
-ident(
-  int_ref t2 "phantom.ml" 31 625 637 "phantom.ml" 31 625 639
-)
-"phantom.ml" 31 625 657 "phantom.ml" 31 625 659
-type(
-  'r
-)
-ident(
-  int_ref t3 "phantom.ml" 31 625 640 "phantom.ml" 31 625 642
-)
-"phantom.ml" 31 625 661 "phantom.ml" 31 625 663
-type(
-  'r
-)
-ident(
-  int_ref t4 "phantom.ml" 31 625 643 "phantom.ml" 31 625 645
-)
-"phantom.ml" 31 625 648 "phantom.ml" 31 625 664
-type(
-  'r list
-)
-"phantom.ml" 32 665 671 "phantom.ml" 32 665 673
-type(
-  's -> 's -> 's -> 's -> 's -> 's list
-)
-ident(
-  def c5 "phantom.ml" 33 712 714 "phantom.ml" 50 1948 1951
-)
-"phantom.ml" 32 665 674 "phantom.ml" 32 665 676
-type(
-  's
-)
-ident(
-  def t1 "phantom.ml" 32 665 677 "phantom.ml" 32 665 711
-)
-"phantom.ml" 32 665 677 "phantom.ml" 32 665 679
-type(
-  's
-)
-ident(
-  def t2 "phantom.ml" 32 665 680 "phantom.ml" 32 665 711
-)
-"phantom.ml" 32 665 680 "phantom.ml" 32 665 682
-type(
-  's
-)
-ident(
-  def t3 "phantom.ml" 32 665 683 "phantom.ml" 32 665 711
-)
-"phantom.ml" 32 665 683 "phantom.ml" 32 665 685
-type(
-  's
-)
-ident(
-  def t4 "phantom.ml" 32 665 686 "phantom.ml" 32 665 711
-)
-"phantom.ml" 32 665 686 "phantom.ml" 32 665 688
-type(
-  's
-)
-ident(
-  def t5 "phantom.ml" 32 665 691 "phantom.ml" 32 665 711
-)
-"phantom.ml" 32 665 692 "phantom.ml" 32 665 694
-type(
-  's
-)
-ident(
-  int_ref t1 "phantom.ml" 32 665 674 "phantom.ml" 32 665 676
-)
-"phantom.ml" 32 665 696 "phantom.ml" 32 665 698
-type(
-  's
-)
-ident(
-  int_ref t2 "phantom.ml" 32 665 677 "phantom.ml" 32 665 679
-)
-"phantom.ml" 32 665 700 "phantom.ml" 32 665 702
-type(
-  's
-)
-ident(
-  int_ref t3 "phantom.ml" 32 665 680 "phantom.ml" 32 665 682
-)
-"phantom.ml" 32 665 704 "phantom.ml" 32 665 706
-type(
-  's
-)
-ident(
-  int_ref t4 "phantom.ml" 32 665 683 "phantom.ml" 32 665 685
-)
-"phantom.ml" 32 665 708 "phantom.ml" 32 665 710
-type(
-  's
-)
-ident(
-  int_ref t5 "phantom.ml" 32 665 686 "phantom.ml" 32 665 688
-)
-"phantom.ml" 32 665 691 "phantom.ml" 32 665 711
+"phantom.ml" 31 627 633 "phantom.ml" 31 627 635
 type(
   's list
 )
-"phantom.ml" 33 712 718 "phantom.ml" 33 712 720
+ident(
+  def c0 "phantom.ml" 32 641 643 "phantom.ml" 54 2040 2043
+)
+"phantom.ml" 31 627 638 "phantom.ml" 31 627 640
 type(
-  't -> 't -> 't -> 't -> 't -> 't -> 't list
+  's list
+)
+"phantom.ml" 32 641 647 "phantom.ml" 32 641 649
+type(
+  't -> 't list
 )
 ident(
-  def c6 "phantom.ml" 34 766 768 "phantom.ml" 50 1948 1951
-)
-"phantom.ml" 33 712 721 "phantom.ml" 33 712 723
+  def c1 "phantom.ml" 33 658 660 "phantom.ml" 54 2040 2043
+)
+"phantom.ml" 32 641 650 "phantom.ml" 32 641 651
 type(
   't
 )
 ident(
-  def t1 "phantom.ml" 33 712 724 "phantom.ml" 33 712 765
-)
-"phantom.ml" 33 712 724 "phantom.ml" 33 712 726
+  def t "phantom.ml" 32 641 654 "phantom.ml" 32 641 657
+)
+"phantom.ml" 32 641 655 "phantom.ml" 32 641 656
 type(
   't
 )
 ident(
-  def t2 "phantom.ml" 33 712 727 "phantom.ml" 33 712 765
-)
-"phantom.ml" 33 712 727 "phantom.ml" 33 712 729
-type(
-  't
-)
-ident(
-  def t3 "phantom.ml" 33 712 730 "phantom.ml" 33 712 765
-)
-"phantom.ml" 33 712 730 "phantom.ml" 33 712 732
-type(
-  't
-)
-ident(
-  def t4 "phantom.ml" 33 712 733 "phantom.ml" 33 712 765
-)
-"phantom.ml" 33 712 733 "phantom.ml" 33 712 735
-type(
-  't
-)
-ident(
-  def t5 "phantom.ml" 33 712 736 "phantom.ml" 33 712 765
-)
-"phantom.ml" 33 712 736 "phantom.ml" 33 712 738
-type(
-  't
-)
-ident(
-  def t6 "phantom.ml" 33 712 741 "phantom.ml" 33 712 765
-)
-"phantom.ml" 33 712 742 "phantom.ml" 33 712 744
-type(
-  't
-)
-ident(
-  int_ref t1 "phantom.ml" 33 712 721 "phantom.ml" 33 712 723
-)
-"phantom.ml" 33 712 746 "phantom.ml" 33 712 748
-type(
-  't
-)
-ident(
-  int_ref t2 "phantom.ml" 33 712 724 "phantom.ml" 33 712 726
-)
-"phantom.ml" 33 712 750 "phantom.ml" 33 712 752
-type(
-  't
-)
-ident(
-  int_ref t3 "phantom.ml" 33 712 727 "phantom.ml" 33 712 729
-)
-"phantom.ml" 33 712 754 "phantom.ml" 33 712 756
-type(
-  't
-)
-ident(
-  int_ref t4 "phantom.ml" 33 712 730 "phantom.ml" 33 712 732
-)
-"phantom.ml" 33 712 758 "phantom.ml" 33 712 760
-type(
-  't
-)
-ident(
-  int_ref t5 "phantom.ml" 33 712 733 "phantom.ml" 33 712 735
-)
-"phantom.ml" 33 712 762 "phantom.ml" 33 712 764
-type(
-  't
-)
-ident(
-  int_ref t6 "phantom.ml" 33 712 736 "phantom.ml" 33 712 738
-)
-"phantom.ml" 33 712 741 "phantom.ml" 33 712 765
+  int_ref t "phantom.ml" 32 641 650 "phantom.ml" 32 641 651
+)
+"phantom.ml" 32 641 654 "phantom.ml" 32 641 657
 type(
   't list
 )
-"phantom.ml" 34 766 772 "phantom.ml" 34 766 774
+"phantom.ml" 33 658 664 "phantom.ml" 33 658 666
 type(
-  'u -> 'u -> 'u -> 'u -> 'u -> 'u -> 'u -> 'u list
+  'u -> 'u -> 'u list
 )
 ident(
-  def c7 "phantom.ml" 35 827 829 "phantom.ml" 50 1948 1951
-)
-"phantom.ml" 34 766 775 "phantom.ml" 34 766 777
+  def c2 "phantom.ml" 34 684 686 "phantom.ml" 54 2040 2043
+)
+"phantom.ml" 33 658 667 "phantom.ml" 33 658 669
 type(
   'u
 )
 ident(
-  def t1 "phantom.ml" 34 766 778 "phantom.ml" 34 766 826
-)
-"phantom.ml" 34 766 778 "phantom.ml" 34 766 780
+  def t1 "phantom.ml" 33 658 670 "phantom.ml" 33 658 683
+)
+"phantom.ml" 33 658 670 "phantom.ml" 33 658 672
 type(
   'u
 )
 ident(
-  def t2 "phantom.ml" 34 766 781 "phantom.ml" 34 766 826
-)
-"phantom.ml" 34 766 781 "phantom.ml" 34 766 783
+  def t2 "phantom.ml" 33 658 675 "phantom.ml" 33 658 683
+)
+"phantom.ml" 33 658 676 "phantom.ml" 33 658 678
 type(
   'u
 )
 ident(
-  def t3 "phantom.ml" 34 766 784 "phantom.ml" 34 766 826
-)
-"phantom.ml" 34 766 784 "phantom.ml" 34 766 786
+  int_ref t1 "phantom.ml" 33 658 667 "phantom.ml" 33 658 669
+)
+"phantom.ml" 33 658 680 "phantom.ml" 33 658 682
 type(
   'u
 )
 ident(
-  def t4 "phantom.ml" 34 766 787 "phantom.ml" 34 766 826
-)
-"phantom.ml" 34 766 787 "phantom.ml" 34 766 789
-type(
-  'u
-)
-ident(
-  def t5 "phantom.ml" 34 766 790 "phantom.ml" 34 766 826
-)
-"phantom.ml" 34 766 790 "phantom.ml" 34 766 792
-type(
-  'u
-)
-ident(
-  def t6 "phantom.ml" 34 766 793 "phantom.ml" 34 766 826
-)
-"phantom.ml" 34 766 793 "phantom.ml" 34 766 795
-type(
-  'u
-)
-ident(
-  def t7 "phantom.ml" 34 766 798 "phantom.ml" 34 766 826
-)
-"phantom.ml" 34 766 799 "phantom.ml" 34 766 801
-type(
-  'u
-)
-ident(
-  int_ref t1 "phantom.ml" 34 766 775 "phantom.ml" 34 766 777
-)
-"phantom.ml" 34 766 803 "phantom.ml" 34 766 805
-type(
-  'u
-)
-ident(
-  int_ref t2 "phantom.ml" 34 766 778 "phantom.ml" 34 766 780
-)
-"phantom.ml" 34 766 807 "phantom.ml" 34 766 809
-type(
-  'u
-)
-ident(
-  int_ref t3 "phantom.ml" 34 766 781 "phantom.ml" 34 766 783
-)
-"phantom.ml" 34 766 811 "phantom.ml" 34 766 813
-type(
-  'u
-)
-ident(
-  int_ref t4 "phantom.ml" 34 766 784 "phantom.ml" 34 766 786
-)
-"phantom.ml" 34 766 815 "phantom.ml" 34 766 817
-type(
-  'u
-)
-ident(
-  int_ref t5 "phantom.ml" 34 766 787 "phantom.ml" 34 766 789
-)
-"phantom.ml" 34 766 819 "phantom.ml" 34 766 821
-type(
-  'u
-)
-ident(
-  int_ref t6 "phantom.ml" 34 766 790 "phantom.ml" 34 766 792
-)
-"phantom.ml" 34 766 823 "phantom.ml" 34 766 825
-type(
-  'u
-)
-ident(
-  int_ref t7 "phantom.ml" 34 766 793 "phantom.ml" 34 766 795
-)
-"phantom.ml" 34 766 798 "phantom.ml" 34 766 826
+  int_ref t2 "phantom.ml" 33 658 670 "phantom.ml" 33 658 672
+)
+"phantom.ml" 33 658 675 "phantom.ml" 33 658 683
 type(
   'u list
 )
-"phantom.ml" 35 827 833 "phantom.ml" 35 827 835
+"phantom.ml" 34 684 690 "phantom.ml" 34 684 692
 type(
-  'v -> 'v -> 'v -> 'v -> 'v -> 'v -> 'v -> 'v -> 'v list
+  'v -> 'v -> 'v -> 'v list
 )
 ident(
-  def c8 "phantom.ml" 36 895 897 "phantom.ml" 50 1948 1951
-)
-"phantom.ml" 35 827 836 "phantom.ml" 35 827 838
+  def c3 "phantom.ml" 35 717 719 "phantom.ml" 54 2040 2043
+)
+"phantom.ml" 34 684 693 "phantom.ml" 34 684 695
 type(
   'v
 )
 ident(
-  def t1 "phantom.ml" 35 827 839 "phantom.ml" 35 827 894
-)
-"phantom.ml" 35 827 839 "phantom.ml" 35 827 841
+  def t1 "phantom.ml" 34 684 696 "phantom.ml" 34 684 716
+)
+"phantom.ml" 34 684 696 "phantom.ml" 34 684 698
 type(
   'v
 )
 ident(
-  def t2 "phantom.ml" 35 827 842 "phantom.ml" 35 827 894
-)
-"phantom.ml" 35 827 842 "phantom.ml" 35 827 844
+  def t2 "phantom.ml" 34 684 699 "phantom.ml" 34 684 716
+)
+"phantom.ml" 34 684 699 "phantom.ml" 34 684 701
 type(
   'v
 )
 ident(
-  def t3 "phantom.ml" 35 827 845 "phantom.ml" 35 827 894
-)
-"phantom.ml" 35 827 845 "phantom.ml" 35 827 847
+  def t3 "phantom.ml" 34 684 704 "phantom.ml" 34 684 716
+)
+"phantom.ml" 34 684 705 "phantom.ml" 34 684 707
 type(
   'v
 )
 ident(
-  def t4 "phantom.ml" 35 827 848 "phantom.ml" 35 827 894
-)
-"phantom.ml" 35 827 848 "phantom.ml" 35 827 850
+  int_ref t1 "phantom.ml" 34 684 693 "phantom.ml" 34 684 695
+)
+"phantom.ml" 34 684 709 "phantom.ml" 34 684 711
 type(
   'v
 )
 ident(
-  def t5 "phantom.ml" 35 827 851 "phantom.ml" 35 827 894
-)
-"phantom.ml" 35 827 851 "phantom.ml" 35 827 853
+  int_ref t2 "phantom.ml" 34 684 696 "phantom.ml" 34 684 698
+)
+"phantom.ml" 34 684 713 "phantom.ml" 34 684 715
 type(
   'v
 )
 ident(
-  def t6 "phantom.ml" 35 827 854 "phantom.ml" 35 827 894
-)
-"phantom.ml" 35 827 854 "phantom.ml" 35 827 856
-type(
-  'v
-)
-ident(
-  def t7 "phantom.ml" 35 827 857 "phantom.ml" 35 827 894
-)
-"phantom.ml" 35 827 857 "phantom.ml" 35 827 859
-type(
-  'v
-)
-ident(
-  def t8 "phantom.ml" 35 827 862 "phantom.ml" 35 827 894
-)
-"phantom.ml" 35 827 863 "phantom.ml" 35 827 865
-type(
-  'v
-)
-ident(
-  int_ref t1 "phantom.ml" 35 827 836 "phantom.ml" 35 827 838
-)
-"phantom.ml" 35 827 867 "phantom.ml" 35 827 869
-type(
-  'v
-)
-ident(
-  int_ref t2 "phantom.ml" 35 827 839 "phantom.ml" 35 827 841
-)
-"phantom.ml" 35 827 871 "phantom.ml" 35 827 873
-type(
-  'v
-)
-ident(
-  int_ref t3 "phantom.ml" 35 827 842 "phantom.ml" 35 827 844
-)
-"phantom.ml" 35 827 875 "phantom.ml" 35 827 877
-type(
-  'v
-)
-ident(
-  int_ref t4 "phantom.ml" 35 827 845 "phantom.ml" 35 827 847
-)
-"phantom.ml" 35 827 879 "phantom.ml" 35 827 881
-type(
-  'v
-)
-ident(
-  int_ref t5 "phantom.ml" 35 827 848 "phantom.ml" 35 827 850
-)
-"phantom.ml" 35 827 883 "phantom.ml" 35 827 885
-type(
-  'v
-)
-ident(
-  int_ref t6 "phantom.ml" 35 827 851 "phantom.ml" 35 827 853
-)
-"phantom.ml" 35 827 887 "phantom.ml" 35 827 889
-type(
-  'v
-)
-ident(
-  int_ref t7 "phantom.ml" 35 827 854 "phantom.ml" 35 827 856
-)
-"phantom.ml" 35 827 891 "phantom.ml" 35 827 893
-type(
-  'v
-)
-ident(
-  int_ref t8 "phantom.ml" 35 827 857 "phantom.ml" 35 827 859
-)
-"phantom.ml" 35 827 862 "phantom.ml" 35 827 894
+  int_ref t3 "phantom.ml" 34 684 699 "phantom.ml" 34 684 701
+)
+"phantom.ml" 34 684 704 "phantom.ml" 34 684 716
 type(
   'v list
 )
-"phantom.ml" 36 895 901 "phantom.ml" 36 895 903
+"phantom.ml" 35 717 723 "phantom.ml" 35 717 725
 type(
-  'w -> 'w -> 'w -> 'w -> 'w -> 'w -> 'w -> 'w -> 'w -> 'w list
+  'w -> 'w -> 'w -> 'w -> 'w list
 )
 ident(
-  def c9 "phantom.ml" 37 970 972 "phantom.ml" 50 1948 1951
-)
-"phantom.ml" 36 895 904 "phantom.ml" 36 895 906
+  def c4 "phantom.ml" 36 757 759 "phantom.ml" 54 2040 2043
+)
+"phantom.ml" 35 717 726 "phantom.ml" 35 717 728
 type(
   'w
 )
 ident(
-  def t1 "phantom.ml" 36 895 907 "phantom.ml" 36 895 969
-)
-"phantom.ml" 36 895 907 "phantom.ml" 36 895 909
+  def t1 "phantom.ml" 35 717 729 "phantom.ml" 35 717 756
+)
+"phantom.ml" 35 717 729 "phantom.ml" 35 717 731
 type(
   'w
 )
 ident(
-  def t2 "phantom.ml" 36 895 910 "phantom.ml" 36 895 969
-)
-"phantom.ml" 36 895 910 "phantom.ml" 36 895 912
+  def t2 "phantom.ml" 35 717 732 "phantom.ml" 35 717 756
+)
+"phantom.ml" 35 717 732 "phantom.ml" 35 717 734
 type(
   'w
 )
 ident(
-  def t3 "phantom.ml" 36 895 913 "phantom.ml" 36 895 969
-)
-"phantom.ml" 36 895 913 "phantom.ml" 36 895 915
+  def t3 "phantom.ml" 35 717 735 "phantom.ml" 35 717 756
+)
+"phantom.ml" 35 717 735 "phantom.ml" 35 717 737
 type(
   'w
 )
 ident(
-  def t4 "phantom.ml" 36 895 916 "phantom.ml" 36 895 969
-)
-"phantom.ml" 36 895 916 "phantom.ml" 36 895 918
+  def t4 "phantom.ml" 35 717 740 "phantom.ml" 35 717 756
+)
+"phantom.ml" 35 717 741 "phantom.ml" 35 717 743
 type(
   'w
 )
 ident(
-  def t5 "phantom.ml" 36 895 919 "phantom.ml" 36 895 969
-)
-"phantom.ml" 36 895 919 "phantom.ml" 36 895 921
+  int_ref t1 "phantom.ml" 35 717 726 "phantom.ml" 35 717 728
+)
+"phantom.ml" 35 717 745 "phantom.ml" 35 717 747
 type(
   'w
 )
 ident(
-  def t6 "phantom.ml" 36 895 922 "phantom.ml" 36 895 969
-)
-"phantom.ml" 36 895 922 "phantom.ml" 36 895 924
+  int_ref t2 "phantom.ml" 35 717 729 "phantom.ml" 35 717 731
+)
+"phantom.ml" 35 717 749 "phantom.ml" 35 717 751
 type(
   'w
 )
 ident(
-  def t7 "phantom.ml" 36 895 925 "phantom.ml" 36 895 969
-)
-"phantom.ml" 36 895 925 "phantom.ml" 36 895 927
+  int_ref t3 "phantom.ml" 35 717 732 "phantom.ml" 35 717 734
+)
+"phantom.ml" 35 717 753 "phantom.ml" 35 717 755
 type(
   'w
 )
 ident(
-  def t8 "phantom.ml" 36 895 928 "phantom.ml" 36 895 969
-)
-"phantom.ml" 36 895 928 "phantom.ml" 36 895 930
-type(
-  'w
-)
-ident(
-  def t9 "phantom.ml" 36 895 933 "phantom.ml" 36 895 969
-)
-"phantom.ml" 36 895 934 "phantom.ml" 36 895 936
-type(
-  'w
-)
-ident(
-  int_ref t1 "phantom.ml" 36 895 904 "phantom.ml" 36 895 906
-)
-"phantom.ml" 36 895 938 "phantom.ml" 36 895 940
-type(
-  'w
-)
-ident(
-  int_ref t2 "phantom.ml" 36 895 907 "phantom.ml" 36 895 909
-)
-"phantom.ml" 36 895 942 "phantom.ml" 36 895 944
-type(
-  'w
-)
-ident(
-  int_ref t3 "phantom.ml" 36 895 910 "phantom.ml" 36 895 912
-)
-"phantom.ml" 36 895 946 "phantom.ml" 36 895 948
-type(
-  'w
-)
-ident(
-  int_ref t4 "phantom.ml" 36 895 913 "phantom.ml" 36 895 915
-)
-"phantom.ml" 36 895 950 "phantom.ml" 36 895 952
-type(
-  'w
-)
-ident(
-  int_ref t5 "phantom.ml" 36 895 916 "phantom.ml" 36 895 918
-)
-"phantom.ml" 36 895 954 "phantom.ml" 36 895 956
-type(
-  'w
-)
-ident(
-  int_ref t6 "phantom.ml" 36 895 919 "phantom.ml" 36 895 921
-)
-"phantom.ml" 36 895 958 "phantom.ml" 36 895 960
-type(
-  'w
-)
-ident(
-  int_ref t7 "phantom.ml" 36 895 922 "phantom.ml" 36 895 924
-)
-"phantom.ml" 36 895 962 "phantom.ml" 36 895 964
-type(
-  'w
-)
-ident(
-  int_ref t8 "phantom.ml" 36 895 925 "phantom.ml" 36 895 927
-)
-"phantom.ml" 36 895 966 "phantom.ml" 36 895 968
-type(
-  'w
-)
-ident(
-  int_ref t9 "phantom.ml" 36 895 928 "phantom.ml" 36 895 930
-)
-"phantom.ml" 36 895 933 "phantom.ml" 36 895 969
+  int_ref t4 "phantom.ml" 35 717 735 "phantom.ml" 35 717 737
+)
+"phantom.ml" 35 717 740 "phantom.ml" 35 717 756
 type(
   'w list
 )
-"phantom.ml" 37 970 976 "phantom.ml" 37 970 979
+"phantom.ml" 36 757 763 "phantom.ml" 36 757 765
 type(
-  'x -> 'x -> 'x -> 'x -> 'x -> 'x -> 'x -> 'x -> 'x -> 'x -> 'x list
+  'x -> 'x -> 'x -> 'x -> 'x -> 'x list
 )
 ident(
-  def c10 "phantom.ml" 39 1058 1060 "phantom.ml" 50 1948 1951
-)
-"phantom.ml" 37 970 980 "phantom.ml" 37 970 982
+  def c5 "phantom.ml" 37 804 806 "phantom.ml" 54 2040 2043
+)
+"phantom.ml" 36 757 766 "phantom.ml" 36 757 768
 type(
   'x
 )
 ident(
-  def t1 "phantom.ml" 37 970 983 "phantom.ml" 37 970 1054
-)
-"phantom.ml" 37 970 983 "phantom.ml" 37 970 985
+  def t1 "phantom.ml" 36 757 769 "phantom.ml" 36 757 803
+)
+"phantom.ml" 36 757 769 "phantom.ml" 36 757 771
 type(
   'x
 )
 ident(
-  def t2 "phantom.ml" 37 970 986 "phantom.ml" 37 970 1054
-)
-"phantom.ml" 37 970 986 "phantom.ml" 37 970 988
+  def t2 "phantom.ml" 36 757 772 "phantom.ml" 36 757 803
+)
+"phantom.ml" 36 757 772 "phantom.ml" 36 757 774
 type(
   'x
 )
 ident(
-  def t3 "phantom.ml" 37 970 989 "phantom.ml" 37 970 1054
-)
-"phantom.ml" 37 970 989 "phantom.ml" 37 970 991
+  def t3 "phantom.ml" 36 757 775 "phantom.ml" 36 757 803
+)
+"phantom.ml" 36 757 775 "phantom.ml" 36 757 777
 type(
   'x
 )
 ident(
-  def t4 "phantom.ml" 37 970 992 "phantom.ml" 37 970 1054
-)
-"phantom.ml" 37 970 992 "phantom.ml" 37 970 994
+  def t4 "phantom.ml" 36 757 778 "phantom.ml" 36 757 803
+)
+"phantom.ml" 36 757 778 "phantom.ml" 36 757 780
 type(
   'x
 )
 ident(
-  def t5 "phantom.ml" 37 970 995 "phantom.ml" 37 970 1054
-)
-"phantom.ml" 37 970 995 "phantom.ml" 37 970 997
+  def t5 "phantom.ml" 36 757 783 "phantom.ml" 36 757 803
+)
+"phantom.ml" 36 757 784 "phantom.ml" 36 757 786
 type(
   'x
 )
 ident(
-  def t6 "phantom.ml" 37 970 998 "phantom.ml" 37 970 1054
-)
-"phantom.ml" 37 970 998 "phantom.ml" 37 970 1000
+  int_ref t1 "phantom.ml" 36 757 766 "phantom.ml" 36 757 768
+)
+"phantom.ml" 36 757 788 "phantom.ml" 36 757 790
 type(
   'x
 )
 ident(
-  def t7 "phantom.ml" 37 970 1001 "phantom.ml" 37 970 1054
-)
-"phantom.ml" 37 970 1001 "phantom.ml" 37 970 1003
+  int_ref t2 "phantom.ml" 36 757 769 "phantom.ml" 36 757 771
+)
+"phantom.ml" 36 757 792 "phantom.ml" 36 757 794
 type(
   'x
 )
 ident(
-  def t8 "phantom.ml" 37 970 1004 "phantom.ml" 37 970 1054
-)
-"phantom.ml" 37 970 1004 "phantom.ml" 37 970 1006
+  int_ref t3 "phantom.ml" 36 757 772 "phantom.ml" 36 757 774
+)
+"phantom.ml" 36 757 796 "phantom.ml" 36 757 798
 type(
   'x
 )
 ident(
-  def t9 "phantom.ml" 37 970 1007 "phantom.ml" 37 970 1054
-)
-"phantom.ml" 37 970 1007 "phantom.ml" 37 970 1010
+  int_ref t4 "phantom.ml" 36 757 775 "phantom.ml" 36 757 777
+)
+"phantom.ml" 36 757 800 "phantom.ml" 36 757 802
 type(
   'x
 )
 ident(
-  def t10 "phantom.ml" 37 970 1013 "phantom.ml" 37 970 1054
-)
-"phantom.ml" 37 970 1014 "phantom.ml" 37 970 1016
-type(
-  'x
-)
-ident(
-  int_ref t1 "phantom.ml" 37 970 980 "phantom.ml" 37 970 982
-)
-"phantom.ml" 37 970 1018 "phantom.ml" 37 970 1020
-type(
-  'x
-)
-ident(
-  int_ref t2 "phantom.ml" 37 970 983 "phantom.ml" 37 970 985
-)
-"phantom.ml" 37 970 1022 "phantom.ml" 37 970 1024
-type(
-  'x
-)
-ident(
-  int_ref t3 "phantom.ml" 37 970 986 "phantom.ml" 37 970 988
-)
-"phantom.ml" 37 970 1026 "phantom.ml" 37 970 1028
-type(
-  'x
-)
-ident(
-  int_ref t4 "phantom.ml" 37 970 989 "phantom.ml" 37 970 991
-)
-"phantom.ml" 37 970 1030 "phantom.ml" 37 970 1032
-type(
-  'x
-)
-ident(
-  int_ref t5 "phantom.ml" 37 970 992 "phantom.ml" 37 970 994
-)
-"phantom.ml" 37 970 1034 "phantom.ml" 37 970 1036
-type(
-  'x
-)
-ident(
-  int_ref t6 "phantom.ml" 37 970 995 "phantom.ml" 37 970 997
-)
-"phantom.ml" 37 970 1038 "phantom.ml" 37 970 1040
-type(
-  'x
-)
-ident(
-  int_ref t7 "phantom.ml" 37 970 998 "phantom.ml" 37 970 1000
-)
-"phantom.ml" 37 970 1042 "phantom.ml" 37 970 1044
-type(
-  'x
-)
-ident(
-  int_ref t8 "phantom.ml" 37 970 1001 "phantom.ml" 37 970 1003
-)
-"phantom.ml" 37 970 1046 "phantom.ml" 37 970 1048
-type(
-  'x
-)
-ident(
-  int_ref t9 "phantom.ml" 37 970 1004 "phantom.ml" 37 970 1006
-)
-"phantom.ml" 37 970 1050 "phantom.ml" 37 970 1053
-type(
-  'x
-)
-ident(
-  int_ref t10 "phantom.ml" 37 970 1007 "phantom.ml" 37 970 1010
-)
-"phantom.ml" 37 970 1013 "phantom.ml" 37 970 1054
+  int_ref t5 "phantom.ml" 36 757 778 "phantom.ml" 36 757 780
+)
+"phantom.ml" 36 757 783 "phantom.ml" 36 757 803
 type(
   'x list
 )
-"phantom.ml" 39 1058 1064 "phantom.ml" 39 1058 1066
+"phantom.ml" 37 804 810 "phantom.ml" 37 804 812
 type(
-  'y list -> 'y
+  'y -> 'y -> 'y -> 'y -> 'y -> 'y -> 'y list
 )
 ident(
-  def d1 "phantom.ml" 40 1107 1109 "phantom.ml" 50 1948 1951
-)
-"phantom.ml" 39 1058 1079 "phantom.ml" 39 1058 1080
+  def c6 "phantom.ml" 38 858 860 "phantom.ml" 54 2040 2043
+)
+"phantom.ml" 37 804 813 "phantom.ml" 37 804 815
 type(
   'y
 )
 ident(
-  def t "phantom.ml" 39 1058 1085 "phantom.ml" 39 1058 1086
-)
-"phantom.ml" 39 1058 1078 "phantom.ml" 39 1058 1081
+  def t1 "phantom.ml" 37 804 816 "phantom.ml" 37 804 857
+)
+"phantom.ml" 37 804 816 "phantom.ml" 37 804 818
+type(
+  'y
+)
+ident(
+  def t2 "phantom.ml" 37 804 819 "phantom.ml" 37 804 857
+)
+"phantom.ml" 37 804 819 "phantom.ml" 37 804 821
+type(
+  'y
+)
+ident(
+  def t3 "phantom.ml" 37 804 822 "phantom.ml" 37 804 857
+)
+"phantom.ml" 37 804 822 "phantom.ml" 37 804 824
+type(
+  'y
+)
+ident(
+  def t4 "phantom.ml" 37 804 825 "phantom.ml" 37 804 857
+)
+"phantom.ml" 37 804 825 "phantom.ml" 37 804 827
+type(
+  'y
+)
+ident(
+  def t5 "phantom.ml" 37 804 828 "phantom.ml" 37 804 857
+)
+"phantom.ml" 37 804 828 "phantom.ml" 37 804 830
+type(
+  'y
+)
+ident(
+  def t6 "phantom.ml" 37 804 833 "phantom.ml" 37 804 857
+)
+"phantom.ml" 37 804 834 "phantom.ml" 37 804 836
+type(
+  'y
+)
+ident(
+  int_ref t1 "phantom.ml" 37 804 813 "phantom.ml" 37 804 815
+)
+"phantom.ml" 37 804 838 "phantom.ml" 37 804 840
+type(
+  'y
+)
+ident(
+  int_ref t2 "phantom.ml" 37 804 816 "phantom.ml" 37 804 818
+)
+"phantom.ml" 37 804 842 "phantom.ml" 37 804 844
+type(
+  'y
+)
+ident(
+  int_ref t3 "phantom.ml" 37 804 819 "phantom.ml" 37 804 821
+)
+"phantom.ml" 37 804 846 "phantom.ml" 37 804 848
+type(
+  'y
+)
+ident(
+  int_ref t4 "phantom.ml" 37 804 822 "phantom.ml" 37 804 824
+)
+"phantom.ml" 37 804 850 "phantom.ml" 37 804 852
+type(
+  'y
+)
+ident(
+  int_ref t5 "phantom.ml" 37 804 825 "phantom.ml" 37 804 827
+)
+"phantom.ml" 37 804 854 "phantom.ml" 37 804 856
+type(
+  'y
+)
+ident(
+  int_ref t6 "phantom.ml" 37 804 828 "phantom.ml" 37 804 830
+)
+"phantom.ml" 37 804 833 "phantom.ml" 37 804 857
 type(
   'y list
 )
-"phantom.ml" 39 1058 1085 "phantom.ml" 39 1058 1086
+"phantom.ml" 38 858 864 "phantom.ml" 38 858 866
 type(
-  'y
+  'z -> 'z -> 'z -> 'z -> 'z -> 'z -> 'z -> 'z list
 )
 ident(
-  int_ref t "phantom.ml" 39 1058 1079 "phantom.ml" 39 1058 1080
-)
-"phantom.ml" 39 1058 1089 "phantom.ml" 39 1058 1090
-type(
-  'y list
-)
-"phantom.ml" 39 1058 1094 "phantom.ml" 39 1058 1106
-type(
-  'y
-)
-"phantom.ml" 39 1058 1069 "phantom.ml" 39 1058 1106
-type(
-  'y list -> 'y
-)
-"phantom.ml" 40 1107 1113 "phantom.ml" 40 1107 1115
-type(
-  'z list -> 'z * 'z
-)
-ident(
-  def d2 "phantom.ml" 41 1168 1170 "phantom.ml" 50 1948 1951
-)
-"phantom.ml" 40 1107 1128 "phantom.ml" 40 1107 1130
+  def c7 "phantom.ml" 39 919 921 "phantom.ml" 54 2040 2043
+)
+"phantom.ml" 38 858 867 "phantom.ml" 38 858 869
 type(
   'z
 )
 ident(
-  def t1 "phantom.ml" 40 1107 1139 "phantom.ml" 40 1107 1147
-)
-"phantom.ml" 40 1107 1132 "phantom.ml" 40 1107 1134
+  def t1 "phantom.ml" 38 858 870 "phantom.ml" 38 858 918
+)
+"phantom.ml" 38 858 870 "phantom.ml" 38 858 872
 type(
   'z
 )
 ident(
-  def t2 "phantom.ml" 40 1107 1139 "phantom.ml" 40 1107 1147
-)
-"phantom.ml" 40 1107 1127 "phantom.ml" 40 1107 1135
+  def t2 "phantom.ml" 38 858 873 "phantom.ml" 38 858 918
+)
+"phantom.ml" 38 858 873 "phantom.ml" 38 858 875
+type(
+  'z
+)
+ident(
+  def t3 "phantom.ml" 38 858 876 "phantom.ml" 38 858 918
+)
+"phantom.ml" 38 858 876 "phantom.ml" 38 858 878
+type(
+  'z
+)
+ident(
+  def t4 "phantom.ml" 38 858 879 "phantom.ml" 38 858 918
+)
+"phantom.ml" 38 858 879 "phantom.ml" 38 858 881
+type(
+  'z
+)
+ident(
+  def t5 "phantom.ml" 38 858 882 "phantom.ml" 38 858 918
+)
+"phantom.ml" 38 858 882 "phantom.ml" 38 858 884
+type(
+  'z
+)
+ident(
+  def t6 "phantom.ml" 38 858 885 "phantom.ml" 38 858 918
+)
+"phantom.ml" 38 858 885 "phantom.ml" 38 858 887
+type(
+  'z
+)
+ident(
+  def t7 "phantom.ml" 38 858 890 "phantom.ml" 38 858 918
+)
+"phantom.ml" 38 858 891 "phantom.ml" 38 858 893
+type(
+  'z
+)
+ident(
+  int_ref t1 "phantom.ml" 38 858 867 "phantom.ml" 38 858 869
+)
+"phantom.ml" 38 858 895 "phantom.ml" 38 858 897
+type(
+  'z
+)
+ident(
+  int_ref t2 "phantom.ml" 38 858 870 "phantom.ml" 38 858 872
+)
+"phantom.ml" 38 858 899 "phantom.ml" 38 858 901
+type(
+  'z
+)
+ident(
+  int_ref t3 "phantom.ml" 38 858 873 "phantom.ml" 38 858 875
+)
+"phantom.ml" 38 858 903 "phantom.ml" 38 858 905
+type(
+  'z
+)
+ident(
+  int_ref t4 "phantom.ml" 38 858 876 "phantom.ml" 38 858 878
+)
+"phantom.ml" 38 858 907 "phantom.ml" 38 858 909
+type(
+  'z
+)
+ident(
+  int_ref t5 "phantom.ml" 38 858 879 "phantom.ml" 38 858 881
+)
+"phantom.ml" 38 858 911 "phantom.ml" 38 858 913
+type(
+  'z
+)
+ident(
+  int_ref t6 "phantom.ml" 38 858 882 "phantom.ml" 38 858 884
+)
+"phantom.ml" 38 858 915 "phantom.ml" 38 858 917
+type(
+  'z
+)
+ident(
+  int_ref t7 "phantom.ml" 38 858 885 "phantom.ml" 38 858 887
+)
+"phantom.ml" 38 858 890 "phantom.ml" 38 858 918
 type(
   'z list
 )
-"phantom.ml" 40 1107 1140 "phantom.ml" 40 1107 1142
+"phantom.ml" 39 919 925 "phantom.ml" 39 919 927
 type(
-  'z
+  'a1 -> 'a1 -> 'a1 -> 'a1 -> 'a1 -> 'a1 -> 'a1 -> 'a1 -> 'a1 list
 )
 ident(
-  int_ref t1 "phantom.ml" 40 1107 1128 "phantom.ml" 40 1107 1130
-)
-"phantom.ml" 40 1107 1144 "phantom.ml" 40 1107 1146
-type(
-  'z
-)
-ident(
-  int_ref t2 "phantom.ml" 40 1107 1132 "phantom.ml" 40 1107 1134
-)
-"phantom.ml" 40 1107 1139 "phantom.ml" 40 1107 1147
-type(
-  'z * 'z
-)
-"phantom.ml" 40 1107 1150 "phantom.ml" 40 1107 1151
-type(
-  'z list
-)
-"phantom.ml" 40 1107 1155 "phantom.ml" 40 1107 1167
-type(
-  'z * 'z
-)
-"phantom.ml" 40 1107 1118 "phantom.ml" 40 1107 1167
-type(
-  'z list -> 'z * 'z
-)
-"phantom.ml" 41 1168 1174 "phantom.ml" 41 1168 1176
-type(
-  'a1 list -> 'a1 * 'a1 * 'a1
-)
-ident(
-  def d3 "phantom.ml" 42 1237 1239 "phantom.ml" 50 1948 1951
-)
-"phantom.ml" 41 1168 1189 "phantom.ml" 41 1168 1191
+  def c8 "phantom.ml" 40 987 989 "phantom.ml" 54 2040 2043
+)
+"phantom.ml" 39 919 928 "phantom.ml" 39 919 930
 type(
   'a1
 )
 ident(
-  def t1 "phantom.ml" 41 1168 1204 "phantom.ml" 41 1168 1216
-)
-"phantom.ml" 41 1168 1193 "phantom.ml" 41 1168 1195
+  def t1 "phantom.ml" 39 919 931 "phantom.ml" 39 919 986
+)
+"phantom.ml" 39 919 931 "phantom.ml" 39 919 933
 type(
   'a1
 )
 ident(
-  def t2 "phantom.ml" 41 1168 1204 "phantom.ml" 41 1168 1216
-)
-"phantom.ml" 41 1168 1197 "phantom.ml" 41 1168 1199
+  def t2 "phantom.ml" 39 919 934 "phantom.ml" 39 919 986
+)
+"phantom.ml" 39 919 934 "phantom.ml" 39 919 936
 type(
   'a1
 )
 ident(
-  def t3 "phantom.ml" 41 1168 1204 "phantom.ml" 41 1168 1216
-)
-"phantom.ml" 41 1168 1188 "phantom.ml" 41 1168 1200
+  def t3 "phantom.ml" 39 919 937 "phantom.ml" 39 919 986
+)
+"phantom.ml" 39 919 937 "phantom.ml" 39 919 939
+type(
+  'a1
+)
+ident(
+  def t4 "phantom.ml" 39 919 940 "phantom.ml" 39 919 986
+)
+"phantom.ml" 39 919 940 "phantom.ml" 39 919 942
+type(
+  'a1
+)
+ident(
+  def t5 "phantom.ml" 39 919 943 "phantom.ml" 39 919 986
+)
+"phantom.ml" 39 919 943 "phantom.ml" 39 919 945
+type(
+  'a1
+)
+ident(
+  def t6 "phantom.ml" 39 919 946 "phantom.ml" 39 919 986
+)
+"phantom.ml" 39 919 946 "phantom.ml" 39 919 948
+type(
+  'a1
+)
+ident(
+  def t7 "phantom.ml" 39 919 949 "phantom.ml" 39 919 986
+)
+"phantom.ml" 39 919 949 "phantom.ml" 39 919 951
+type(
+  'a1
+)
+ident(
+  def t8 "phantom.ml" 39 919 954 "phantom.ml" 39 919 986
+)
+"phantom.ml" 39 919 955 "phantom.ml" 39 919 957
+type(
+  'a1
+)
+ident(
+  int_ref t1 "phantom.ml" 39 919 928 "phantom.ml" 39 919 930
+)
+"phantom.ml" 39 919 959 "phantom.ml" 39 919 961
+type(
+  'a1
+)
+ident(
+  int_ref t2 "phantom.ml" 39 919 931 "phantom.ml" 39 919 933
+)
+"phantom.ml" 39 919 963 "phantom.ml" 39 919 965
+type(
+  'a1
+)
+ident(
+  int_ref t3 "phantom.ml" 39 919 934 "phantom.ml" 39 919 936
+)
+"phantom.ml" 39 919 967 "phantom.ml" 39 919 969
+type(
+  'a1
+)
+ident(
+  int_ref t4 "phantom.ml" 39 919 937 "phantom.ml" 39 919 939
+)
+"phantom.ml" 39 919 971 "phantom.ml" 39 919 973
+type(
+  'a1
+)
+ident(
+  int_ref t5 "phantom.ml" 39 919 940 "phantom.ml" 39 919 942
+)
+"phantom.ml" 39 919 975 "phantom.ml" 39 919 977
+type(
+  'a1
+)
+ident(
+  int_ref t6 "phantom.ml" 39 919 943 "phantom.ml" 39 919 945
+)
+"phantom.ml" 39 919 979 "phantom.ml" 39 919 981
+type(
+  'a1
+)
+ident(
+  int_ref t7 "phantom.ml" 39 919 946 "phantom.ml" 39 919 948
+)
+"phantom.ml" 39 919 983 "phantom.ml" 39 919 985
+type(
+  'a1
+)
+ident(
+  int_ref t8 "phantom.ml" 39 919 949 "phantom.ml" 39 919 951
+)
+"phantom.ml" 39 919 954 "phantom.ml" 39 919 986
 type(
   'a1 list
 )
-"phantom.ml" 41 1168 1205 "phantom.ml" 41 1168 1207
+"phantom.ml" 40 987 993 "phantom.ml" 40 987 995
 type(
-  'a1
+  'b1 -> 'b1 -> 'b1 -> 'b1 -> 'b1 -> 'b1 -> 'b1 -> 'b1 -> 'b1 -> 'b1 list
 )
 ident(
-  int_ref t1 "phantom.ml" 41 1168 1189 "phantom.ml" 41 1168 1191
-)
-"phantom.ml" 41 1168 1209 "phantom.ml" 41 1168 1211
-type(
-  'a1
-)
-ident(
-  int_ref t2 "phantom.ml" 41 1168 1193 "phantom.ml" 41 1168 1195
-)
-"phantom.ml" 41 1168 1213 "phantom.ml" 41 1168 1215
-type(
-  'a1
-)
-ident(
-  int_ref t3 "phantom.ml" 41 1168 1197 "phantom.ml" 41 1168 1199
-)
-"phantom.ml" 41 1168 1204 "phantom.ml" 41 1168 1216
-type(
-  'a1 * 'a1 * 'a1
-)
-"phantom.ml" 41 1168 1219 "phantom.ml" 41 1168 1220
-type(
-  'a1 list
-)
-"phantom.ml" 41 1168 1224 "phantom.ml" 41 1168 1236
-type(
-  'a1 * 'a1 * 'a1
-)
-"phantom.ml" 41 1168 1179 "phantom.ml" 41 1168 1236
-type(
-  'a1 list -> 'a1 * 'a1 * 'a1
-)
-"phantom.ml" 42 1237 1243 "phantom.ml" 42 1237 1245
-type(
-  'b1 list -> 'b1 * 'b1 * 'b1 * 'b1
-)
-ident(
-  def d4 "phantom.ml" 43 1314 1316 "phantom.ml" 50 1948 1951
-)
-"phantom.ml" 42 1237 1258 "phantom.ml" 42 1237 1260
+  def c9 "phantom.ml" 41 1062 1064 "phantom.ml" 54 2040 2043
+)
+"phantom.ml" 40 987 996 "phantom.ml" 40 987 998
 type(
   'b1
 )
 ident(
-  def t1 "phantom.ml" 42 1237 1277 "phantom.ml" 42 1237 1293
-)
-"phantom.ml" 42 1237 1262 "phantom.ml" 42 1237 1264
+  def t1 "phantom.ml" 40 987 999 "phantom.ml" 40 987 1061
+)
+"phantom.ml" 40 987 999 "phantom.ml" 40 987 1001
 type(
   'b1
 )
 ident(
-  def t2 "phantom.ml" 42 1237 1277 "phantom.ml" 42 1237 1293
-)
-"phantom.ml" 42 1237 1266 "phantom.ml" 42 1237 1268
+  def t2 "phantom.ml" 40 987 1002 "phantom.ml" 40 987 1061
+)
+"phantom.ml" 40 987 1002 "phantom.ml" 40 987 1004
 type(
   'b1
 )
 ident(
-  def t3 "phantom.ml" 42 1237 1277 "phantom.ml" 42 1237 1293
-)
-"phantom.ml" 42 1237 1270 "phantom.ml" 42 1237 1272
+  def t3 "phantom.ml" 40 987 1005 "phantom.ml" 40 987 1061
+)
+"phantom.ml" 40 987 1005 "phantom.ml" 40 987 1007
 type(
   'b1
 )
 ident(
-  def t4 "phantom.ml" 42 1237 1277 "phantom.ml" 42 1237 1293
-)
-"phantom.ml" 42 1237 1257 "phantom.ml" 42 1237 1273
+  def t4 "phantom.ml" 40 987 1008 "phantom.ml" 40 987 1061
+)
+"phantom.ml" 40 987 1008 "phantom.ml" 40 987 1010
+type(
+  'b1
+)
+ident(
+  def t5 "phantom.ml" 40 987 1011 "phantom.ml" 40 987 1061
+)
+"phantom.ml" 40 987 1011 "phantom.ml" 40 987 1013
+type(
+  'b1
+)
+ident(
+  def t6 "phantom.ml" 40 987 1014 "phantom.ml" 40 987 1061
+)
+"phantom.ml" 40 987 1014 "phantom.ml" 40 987 1016
+type(
+  'b1
+)
+ident(
+  def t7 "phantom.ml" 40 987 1017 "phantom.ml" 40 987 1061
+)
+"phantom.ml" 40 987 1017 "phantom.ml" 40 987 1019
+type(
+  'b1
+)
+ident(
+  def t8 "phantom.ml" 40 987 1020 "phantom.ml" 40 987 1061
+)
+"phantom.ml" 40 987 1020 "phantom.ml" 40 987 1022
+type(
+  'b1
+)
+ident(
+  def t9 "phantom.ml" 40 987 1025 "phantom.ml" 40 987 1061
+)
+"phantom.ml" 40 987 1026 "phantom.ml" 40 987 1028
+type(
+  'b1
+)
+ident(
+  int_ref t1 "phantom.ml" 40 987 996 "phantom.ml" 40 987 998
+)
+"phantom.ml" 40 987 1030 "phantom.ml" 40 987 1032
+type(
+  'b1
+)
+ident(
+  int_ref t2 "phantom.ml" 40 987 999 "phantom.ml" 40 987 1001
+)
+"phantom.ml" 40 987 1034 "phantom.ml" 40 987 1036
+type(
+  'b1
+)
+ident(
+  int_ref t3 "phantom.ml" 40 987 1002 "phantom.ml" 40 987 1004
+)
+"phantom.ml" 40 987 1038 "phantom.ml" 40 987 1040
+type(
+  'b1
+)
+ident(
+  int_ref t4 "phantom.ml" 40 987 1005 "phantom.ml" 40 987 1007
+)
+"phantom.ml" 40 987 1042 "phantom.ml" 40 987 1044
+type(
+  'b1
+)
+ident(
+  int_ref t5 "phantom.ml" 40 987 1008 "phantom.ml" 40 987 1010
+)
+"phantom.ml" 40 987 1046 "phantom.ml" 40 987 1048
+type(
+  'b1
+)
+ident(
+  int_ref t6 "phantom.ml" 40 987 1011 "phantom.ml" 40 987 1013
+)
+"phantom.ml" 40 987 1050 "phantom.ml" 40 987 1052
+type(
+  'b1
+)
+ident(
+  int_ref t7 "phantom.ml" 40 987 1014 "phantom.ml" 40 987 1016
+)
+"phantom.ml" 40 987 1054 "phantom.ml" 40 987 1056
+type(
+  'b1
+)
+ident(
+  int_ref t8 "phantom.ml" 40 987 1017 "phantom.ml" 40 987 1019
+)
+"phantom.ml" 40 987 1058 "phantom.ml" 40 987 1060
+type(
+  'b1
+)
+ident(
+  int_ref t9 "phantom.ml" 40 987 1020 "phantom.ml" 40 987 1022
+)
+"phantom.ml" 40 987 1025 "phantom.ml" 40 987 1061
 type(
   'b1 list
 )
-"phantom.ml" 42 1237 1278 "phantom.ml" 42 1237 1280
+"phantom.ml" 41 1062 1068 "phantom.ml" 41 1062 1071
 type(
-  'b1
+  'c1 ->
+  'c1 -> 'c1 -> 'c1 -> 'c1 -> 'c1 -> 'c1 -> 'c1 -> 'c1 -> 'c1 -> 'c1 list
 )
 ident(
-  int_ref t1 "phantom.ml" 42 1237 1258 "phantom.ml" 42 1237 1260
-)
-"phantom.ml" 42 1237 1282 "phantom.ml" 42 1237 1284
-type(
-  'b1
-)
-ident(
-  int_ref t2 "phantom.ml" 42 1237 1262 "phantom.ml" 42 1237 1264
-)
-"phantom.ml" 42 1237 1286 "phantom.ml" 42 1237 1288
-type(
-  'b1
-)
-ident(
-  int_ref t3 "phantom.ml" 42 1237 1266 "phantom.ml" 42 1237 1268
-)
-"phantom.ml" 42 1237 1290 "phantom.ml" 42 1237 1292
-type(
-  'b1
-)
-ident(
-  int_ref t4 "phantom.ml" 42 1237 1270 "phantom.ml" 42 1237 1272
-)
-"phantom.ml" 42 1237 1277 "phantom.ml" 42 1237 1293
-type(
-  'b1 * 'b1 * 'b1 * 'b1
-)
-"phantom.ml" 42 1237 1296 "phantom.ml" 42 1237 1297
-type(
-  'b1 list
-)
-"phantom.ml" 42 1237 1301 "phantom.ml" 42 1237 1313
-type(
-  'b1 * 'b1 * 'b1 * 'b1
-)
-"phantom.ml" 42 1237 1248 "phantom.ml" 42 1237 1313
-type(
-  'b1 list -> 'b1 * 'b1 * 'b1 * 'b1
-)
-"phantom.ml" 43 1314 1320 "phantom.ml" 43 1314 1322
-type(
-  'c1 list -> 'c1 * 'c1 * 'c1 * 'c1 * 'c1
-)
-ident(
-  def d5 "phantom.ml" 44 1399 1401 "phantom.ml" 50 1948 1951
-)
-"phantom.ml" 43 1314 1335 "phantom.ml" 43 1314 1337
+  def c10 "phantom.ml" 43 1150 1152 "phantom.ml" 54 2040 2043
+)
+"phantom.ml" 41 1062 1072 "phantom.ml" 41 1062 1074
 type(
   'c1
 )
 ident(
-  def t1 "phantom.ml" 43 1314 1358 "phantom.ml" 43 1314 1378
-)
-"phantom.ml" 43 1314 1339 "phantom.ml" 43 1314 1341
+  def t1 "phantom.ml" 41 1062 1075 "phantom.ml" 41 1062 1146
+)
+"phantom.ml" 41 1062 1075 "phantom.ml" 41 1062 1077
 type(
   'c1
 )
 ident(
-  def t2 "phantom.ml" 43 1314 1358 "phantom.ml" 43 1314 1378
-)
-"phantom.ml" 43 1314 1343 "phantom.ml" 43 1314 1345
+  def t2 "phantom.ml" 41 1062 1078 "phantom.ml" 41 1062 1146
+)
+"phantom.ml" 41 1062 1078 "phantom.ml" 41 1062 1080
 type(
   'c1
 )
 ident(
-  def t3 "phantom.ml" 43 1314 1358 "phantom.ml" 43 1314 1378
-)
-"phantom.ml" 43 1314 1347 "phantom.ml" 43 1314 1349
+  def t3 "phantom.ml" 41 1062 1081 "phantom.ml" 41 1062 1146
+)
+"phantom.ml" 41 1062 1081 "phantom.ml" 41 1062 1083
 type(
   'c1
 )
 ident(
-  def t4 "phantom.ml" 43 1314 1358 "phantom.ml" 43 1314 1378
-)
-"phantom.ml" 43 1314 1351 "phantom.ml" 43 1314 1353
+  def t4 "phantom.ml" 41 1062 1084 "phantom.ml" 41 1062 1146
+)
+"phantom.ml" 41 1062 1084 "phantom.ml" 41 1062 1086
 type(
   'c1
 )
 ident(
-  def t5 "phantom.ml" 43 1314 1358 "phantom.ml" 43 1314 1378
-)
-"phantom.ml" 43 1314 1334 "phantom.ml" 43 1314 1354
+  def t5 "phantom.ml" 41 1062 1087 "phantom.ml" 41 1062 1146
+)
+"phantom.ml" 41 1062 1087 "phantom.ml" 41 1062 1089
+type(
+  'c1
+)
+ident(
+  def t6 "phantom.ml" 41 1062 1090 "phantom.ml" 41 1062 1146
+)
+"phantom.ml" 41 1062 1090 "phantom.ml" 41 1062 1092
+type(
+  'c1
+)
+ident(
+  def t7 "phantom.ml" 41 1062 1093 "phantom.ml" 41 1062 1146
+)
+"phantom.ml" 41 1062 1093 "phantom.ml" 41 1062 1095
+type(
+  'c1
+)
+ident(
+  def t8 "phantom.ml" 41 1062 1096 "phantom.ml" 41 1062 1146
+)
+"phantom.ml" 41 1062 1096 "phantom.ml" 41 1062 1098
+type(
+  'c1
+)
+ident(
+  def t9 "phantom.ml" 41 1062 1099 "phantom.ml" 41 1062 1146
+)
+"phantom.ml" 41 1062 1099 "phantom.ml" 41 1062 1102
+type(
+  'c1
+)
+ident(
+  def t10 "phantom.ml" 41 1062 1105 "phantom.ml" 41 1062 1146
+)
+"phantom.ml" 41 1062 1106 "phantom.ml" 41 1062 1108
+type(
+  'c1
+)
+ident(
+  int_ref t1 "phantom.ml" 41 1062 1072 "phantom.ml" 41 1062 1074
+)
+"phantom.ml" 41 1062 1110 "phantom.ml" 41 1062 1112
+type(
+  'c1
+)
+ident(
+  int_ref t2 "phantom.ml" 41 1062 1075 "phantom.ml" 41 1062 1077
+)
+"phantom.ml" 41 1062 1114 "phantom.ml" 41 1062 1116
+type(
+  'c1
+)
+ident(
+  int_ref t3 "phantom.ml" 41 1062 1078 "phantom.ml" 41 1062 1080
+)
+"phantom.ml" 41 1062 1118 "phantom.ml" 41 1062 1120
+type(
+  'c1
+)
+ident(
+  int_ref t4 "phantom.ml" 41 1062 1081 "phantom.ml" 41 1062 1083
+)
+"phantom.ml" 41 1062 1122 "phantom.ml" 41 1062 1124
+type(
+  'c1
+)
+ident(
+  int_ref t5 "phantom.ml" 41 1062 1084 "phantom.ml" 41 1062 1086
+)
+"phantom.ml" 41 1062 1126 "phantom.ml" 41 1062 1128
+type(
+  'c1
+)
+ident(
+  int_ref t6 "phantom.ml" 41 1062 1087 "phantom.ml" 41 1062 1089
+)
+"phantom.ml" 41 1062 1130 "phantom.ml" 41 1062 1132
+type(
+  'c1
+)
+ident(
+  int_ref t7 "phantom.ml" 41 1062 1090 "phantom.ml" 41 1062 1092
+)
+"phantom.ml" 41 1062 1134 "phantom.ml" 41 1062 1136
+type(
+  'c1
+)
+ident(
+  int_ref t8 "phantom.ml" 41 1062 1093 "phantom.ml" 41 1062 1095
+)
+"phantom.ml" 41 1062 1138 "phantom.ml" 41 1062 1140
+type(
+  'c1
+)
+ident(
+  int_ref t9 "phantom.ml" 41 1062 1096 "phantom.ml" 41 1062 1098
+)
+"phantom.ml" 41 1062 1142 "phantom.ml" 41 1062 1145
+type(
+  'c1
+)
+ident(
+  int_ref t10 "phantom.ml" 41 1062 1099 "phantom.ml" 41 1062 1102
+)
+"phantom.ml" 41 1062 1105 "phantom.ml" 41 1062 1146
 type(
   'c1 list
 )
-"phantom.ml" 43 1314 1359 "phantom.ml" 43 1314 1361
+"phantom.ml" 43 1150 1156 "phantom.ml" 43 1150 1158
 type(
-  'c1
+  'd1 list -> 'd1
 )
 ident(
-  int_ref t1 "phantom.ml" 43 1314 1335 "phantom.ml" 43 1314 1337
-)
-"phantom.ml" 43 1314 1363 "phantom.ml" 43 1314 1365
-type(
-  'c1
-)
-ident(
-  int_ref t2 "phantom.ml" 43 1314 1339 "phantom.ml" 43 1314 1341
-)
-"phantom.ml" 43 1314 1367 "phantom.ml" 43 1314 1369
-type(
-  'c1
-)
-ident(
-  int_ref t3 "phantom.ml" 43 1314 1343 "phantom.ml" 43 1314 1345
-)
-"phantom.ml" 43 1314 1371 "phantom.ml" 43 1314 1373
-type(
-  'c1
-)
-ident(
-  int_ref t4 "phantom.ml" 43 1314 1347 "phantom.ml" 43 1314 1349
-)
-"phantom.ml" 43 1314 1375 "phantom.ml" 43 1314 1377
-type(
-  'c1
-)
-ident(
-  int_ref t5 "phantom.ml" 43 1314 1351 "phantom.ml" 43 1314 1353
-)
-"phantom.ml" 43 1314 1358 "phantom.ml" 43 1314 1378
-type(
-  'c1 * 'c1 * 'c1 * 'c1 * 'c1
-)
-"phantom.ml" 43 1314 1381 "phantom.ml" 43 1314 1382
-type(
-  'c1 list
-)
-"phantom.ml" 43 1314 1386 "phantom.ml" 43 1314 1398
-type(
-  'c1 * 'c1 * 'c1 * 'c1 * 'c1
-)
-"phantom.ml" 43 1314 1325 "phantom.ml" 43 1314 1398
-type(
-  'c1 list -> 'c1 * 'c1 * 'c1 * 'c1 * 'c1
-)
-"phantom.ml" 44 1399 1405 "phantom.ml" 44 1399 1407
-type(
-  'd1 list -> 'd1 * 'd1 * 'd1 * 'd1 * 'd1 * 'd1
-)
-ident(
-  def d6 "phantom.ml" 45 1492 1494 "phantom.ml" 50 1948 1951
-)
-"phantom.ml" 44 1399 1420 "phantom.ml" 44 1399 1422
+  def d1 "phantom.ml" 44 1199 1201 "phantom.ml" 54 2040 2043
+)
+"phantom.ml" 43 1150 1171 "phantom.ml" 43 1150 1172
 type(
   'd1
 )
 ident(
-  def t1 "phantom.ml" 44 1399 1447 "phantom.ml" 44 1399 1471
-)
-"phantom.ml" 44 1399 1424 "phantom.ml" 44 1399 1426
+  def t "phantom.ml" 43 1150 1177 "phantom.ml" 43 1150 1178
+)
+"phantom.ml" 43 1150 1170 "phantom.ml" 43 1150 1173
+type(
+  'd1 list
+)
+"phantom.ml" 43 1150 1177 "phantom.ml" 43 1150 1178
 type(
   'd1
 )
 ident(
-  def t2 "phantom.ml" 44 1399 1447 "phantom.ml" 44 1399 1471
-)
-"phantom.ml" 44 1399 1428 "phantom.ml" 44 1399 1430
+  int_ref t "phantom.ml" 43 1150 1171 "phantom.ml" 43 1150 1172
+)
+"phantom.ml" 43 1150 1181 "phantom.ml" 43 1150 1182
+type(
+  'd1 list
+)
+"phantom.ml" 43 1150 1186 "phantom.ml" 43 1150 1198
 type(
   'd1
 )
+"phantom.ml" 43 1150 1161 "phantom.ml" 43 1150 1198
+type(
+  'd1 list -> 'd1
+)
+"phantom.ml" 44 1199 1205 "phantom.ml" 44 1199 1207
+type(
+  'e1 list -> 'e1 * 'e1
+)
 ident(
-  def t3 "phantom.ml" 44 1399 1447 "phantom.ml" 44 1399 1471
-)
-"phantom.ml" 44 1399 1432 "phantom.ml" 44 1399 1434
-type(
-  'd1
-)
-ident(
-  def t4 "phantom.ml" 44 1399 1447 "phantom.ml" 44 1399 1471
-)
-"phantom.ml" 44 1399 1436 "phantom.ml" 44 1399 1438
-type(
-  'd1
-)
-ident(
-  def t5 "phantom.ml" 44 1399 1447 "phantom.ml" 44 1399 1471
-)
-"phantom.ml" 44 1399 1440 "phantom.ml" 44 1399 1442
-type(
-  'd1
-)
-ident(
-  def t6 "phantom.ml" 44 1399 1447 "phantom.ml" 44 1399 1471
-)
-"phantom.ml" 44 1399 1419 "phantom.ml" 44 1399 1443
-type(
-  'd1 list
-)
-"phantom.ml" 44 1399 1448 "phantom.ml" 44 1399 1450
-type(
-  'd1
-)
-ident(
-  int_ref t1 "phantom.ml" 44 1399 1420 "phantom.ml" 44 1399 1422
-)
-"phantom.ml" 44 1399 1452 "phantom.ml" 44 1399 1454
-type(
-  'd1
-)
-ident(
-  int_ref t2 "phantom.ml" 44 1399 1424 "phantom.ml" 44 1399 1426
-)
-"phantom.ml" 44 1399 1456 "phantom.ml" 44 1399 1458
-type(
-  'd1
-)
-ident(
-  int_ref t3 "phantom.ml" 44 1399 1428 "phantom.ml" 44 1399 1430
-)
-"phantom.ml" 44 1399 1460 "phantom.ml" 44 1399 1462
-type(
-  'd1
-)
-ident(
-  int_ref t4 "phantom.ml" 44 1399 1432 "phantom.ml" 44 1399 1434
-)
-"phantom.ml" 44 1399 1464 "phantom.ml" 44 1399 1466
-type(
-  'd1
-)
-ident(
-  int_ref t5 "phantom.ml" 44 1399 1436 "phantom.ml" 44 1399 1438
-)
-"phantom.ml" 44 1399 1468 "phantom.ml" 44 1399 1470
-type(
-  'd1
-)
-ident(
-  int_ref t6 "phantom.ml" 44 1399 1440 "phantom.ml" 44 1399 1442
-)
-"phantom.ml" 44 1399 1447 "phantom.ml" 44 1399 1471
-type(
-  'd1 * 'd1 * 'd1 * 'd1 * 'd1 * 'd1
-)
-"phantom.ml" 44 1399 1474 "phantom.ml" 44 1399 1475
-type(
-  'd1 list
-)
-"phantom.ml" 44 1399 1479 "phantom.ml" 44 1399 1491
-type(
-  'd1 * 'd1 * 'd1 * 'd1 * 'd1 * 'd1
-)
-"phantom.ml" 44 1399 1410 "phantom.ml" 44 1399 1491
-type(
-  'd1 list -> 'd1 * 'd1 * 'd1 * 'd1 * 'd1 * 'd1
-)
-"phantom.ml" 45 1492 1498 "phantom.ml" 45 1492 1500
-type(
-  'e1 list -> 'e1 * 'e1 * 'e1 * 'e1 * 'e1 * 'e1 * 'e1
-)
-ident(
-  def d7 "phantom.ml" 46 1593 1595 "phantom.ml" 50 1948 1951
-)