1 Initializing and loading the TestWatcher class that will (eventually) be notified of object allocations 2 Allocating an j.l.Object before redefining Object class 3 Allocating a Transform before redefining Object class 4 Redefining the Object class to add a hook into the <init> method 5 Allocating an j.l.Object after redefining Object class 6 Object allocated of type 'java.lang.Object' 7 Allocating a Transform after redefining Object class 8 Object allocated of type 'Transform' 9 Allocating an int[] after redefining Object class 10 Allocating an array list 11 Object allocated of type 'java.util.ArrayList' 12 Adding a bunch of stuff to the array list 13 Object allocated of type 'java.lang.Object' 14 Object allocated of type 'java.lang.Object' 15 Object allocated of type 'Transform' 16 Allocating a linked list 17 Object allocated of type 'java.util.LinkedList' 18 Adding a bunch of stuff to the linked list 19 Object allocated of type 'java.lang.Object' 20 Object allocated of type 'java.util.LinkedList$Node' 21 Object allocated of type 'java.lang.Object' 22 Object allocated of type 'java.util.LinkedList$Node' 23 Object allocated of type 'java.util.LinkedList$Node' 24 Object allocated of type 'java.util.LinkedList$Node' 25 Object allocated of type 'java.util.LinkedList$Node' 26 Object allocated of type 'java.util.LinkedList$Node' 27 Object allocated of type 'Transform' 28 Object allocated of type 'java.util.LinkedList$Node' 29 Throwing from down 4 stack frames 30 Object allocated of type 'java.lang.Exception' 31 Exception caught. 32 Finishing test! 33 Object allocated of type 'java.lang.Thread' 34 Object allocated of type 'java.lang.Object' 35 Object allocated of type 'java.lang.Object' 36 Object allocated of type 'java.security.AccessControlContext' 37