| ### Object @ 0xdeffd0 created via default constructor |
| ### MyObject1 @ 0xdeffd0 created MyObject1[1] |
| ### ref<MyObject1> @ 0x7f6a2e03c4a8 created from pointer 0xdeffd0 |
| ### Object @ 0xe43f50 created via default constructor |
| ### MyObject1 @ 0xe43f50 created MyObject1[2] |
| ### ref<Object> @ 0x7fff136845d0 created from pointer 0xe43f50 |
| ### ref<MyObject1> @ 0x7f6a2c32aad8 created via copy constructor with pointer 0xe43f50 |
| ### ref<Object> @ 0x7fff136845d0 destroyed |
| ### Object @ 0xee8cf0 created via default constructor |
| ### MyObject1 @ 0xee8cf0 created MyObject1[3] |
| ### ref<MyObject1> @ 0x7f6a2c32ab08 created from pointer 0xee8cf0 |
| Reference count = 1 |
| MyObject1[1] |
| ### ref<Object> @ 0x7fff136845c8 created via default constructor |
| ### ref<Object> @ 0x7fff136845c8 assigned via copy assignment pointer 0xdeffd0 |
| ### ref<Object> @ 0x7fff136845a8 created via copy constructor with pointer 0xdeffd0 |
| MyObject1[1] |
| ### ref<Object> @ 0x7fff136845a8 destroyed |
| ### ref<Object> @ 0x7fff136845c8 destroyed |
| ### ref<Object> @ 0x7fff136845c8 created via default constructor |
| ### ref<Object> @ 0x7fff136845c8 assigned via copy assignment pointer 0xdeffd0 |
| MyObject1[1] |
| ### ref<Object> @ 0x7fff136845c8 destroyed |
| ### ref<Object> @ 0x7fff136845c8 created via default constructor |
| ### ref<Object> @ 0x7fff136845c8 assigned via copy assignment pointer 0xdeffd0 |
| MyObject1[1] |
| ### ref<Object> @ 0x7fff136845c8 destroyed |
| Reference count = 1 |
| MyObject1[2] |
| ### ref<Object> @ 0x7fff136845c8 created via default constructor |
| ### ref<Object> @ 0x7fff136845c8 assigned via copy assignment pointer 0xe43f50 |
| ### ref<Object> @ 0x7fff136845a8 created via copy constructor with pointer 0xe43f50 |
| MyObject1[2] |
| ### ref<Object> @ 0x7fff136845a8 destroyed |
| ### ref<Object> @ 0x7fff136845c8 destroyed |
| ### ref<Object> @ 0x7fff136845c8 created via default constructor |
| ### ref<Object> @ 0x7fff136845c8 assigned via copy assignment pointer 0xe43f50 |
| MyObject1[2] |
| ### ref<Object> @ 0x7fff136845c8 destroyed |
| ### ref<Object> @ 0x7fff136845c8 created via default constructor |
| ### ref<Object> @ 0x7fff136845c8 assigned via copy assignment pointer 0xe43f50 |
| MyObject1[2] |
| ### ref<Object> @ 0x7fff136845c8 destroyed |
| Reference count = 1 |
| MyObject1[3] |
| ### ref<Object> @ 0x7fff136845c8 created via default constructor |
| ### ref<Object> @ 0x7fff136845c8 assigned via copy assignment pointer 0xee8cf0 |
| ### ref<Object> @ 0x7fff136845a8 created via copy constructor with pointer 0xee8cf0 |
| MyObject1[3] |
| ### ref<Object> @ 0x7fff136845a8 destroyed |
| ### ref<Object> @ 0x7fff136845c8 destroyed |
| ### ref<Object> @ 0x7fff136845c8 created via default constructor |
| ### ref<Object> @ 0x7fff136845c8 assigned via copy assignment pointer 0xee8cf0 |
| MyObject1[3] |
| ### ref<Object> @ 0x7fff136845c8 destroyed |
| ### ref<Object> @ 0x7fff136845c8 created via default constructor |
| ### ref<Object> @ 0x7fff136845c8 assigned via copy assignment pointer 0xee8cf0 |
| MyObject1[3] |
| ### ref<Object> @ 0x7fff136845c8 destroyed |
| ### MyObject1 @ 0xe43f50 destroyed |
| ### Object @ 0xe43f50 destroyed |
| ### ref<MyObject1> @ 0x7f6a2c32aad8 destroyed |
| ### MyObject1 @ 0xdeffd0 destroyed |
| ### Object @ 0xdeffd0 destroyed |
| ### ref<MyObject1> @ 0x7f6a2e03c4a8 destroyed |
| ### Object @ 0xee8310 created via default constructor |
| ### MyObject1 @ 0xee8310 created MyObject1[4] |
| ### ref<MyObject1> @ 0x7f6a2e03c4a8 created from pointer 0xee8310 |
| ### Object @ 0xee8470 created via default constructor |
| ### MyObject1 @ 0xee8470 created MyObject1[5] |
| ### ref<MyObject1> @ 0x7fff136845d0 created from pointer 0xee8470 |
| ### ref<MyObject1> @ 0x7f6a2c32aad8 created via copy constructor with pointer 0xee8470 |
| ### ref<MyObject1> @ 0x7fff136845d0 destroyed |
| ### Object @ 0xee95a0 created via default constructor |
| ### MyObject1 @ 0xee95a0 created MyObject1[6] |
| ### ref<MyObject1> @ 0x7f6a2c32ab38 created from pointer 0xee95a0 |
| ### MyObject1 @ 0xee8cf0 destroyed |
| ### Object @ 0xee8cf0 destroyed |
| ### ref<MyObject1> @ 0x7f6a2c32ab08 destroyed |
| <example.MyObject1 object at 0x7f6a2e03c480> |
| MyObject1[4] |
| ### ref<Object> @ 0x7fff136845c8 created via default constructor |
| ### ref<Object> @ 0x7fff136845c8 assigned via copy assignment pointer 0xee8310 |
| ### ref<Object> @ 0x7fff136845a8 created via copy constructor with pointer 0xee8310 |
| MyObject1[4] |
| ### ref<Object> @ 0x7fff136845a8 destroyed |
| ### ref<Object> @ 0x7fff136845c8 destroyed |
| ### ref<Object> @ 0x7fff136845c8 created via default constructor |
| ### ref<Object> @ 0x7fff136845c8 assigned via copy assignment pointer 0xee8310 |
| MyObject1[4] |
| ### ref<Object> @ 0x7fff136845c8 destroyed |
| ### ref<Object> @ 0x7fff136845c8 created via default constructor |
| ### ref<Object> @ 0x7fff136845c8 assigned via copy assignment pointer 0xee8310 |
| MyObject1[4] |
| ### ref<Object> @ 0x7fff136845c8 destroyed |
| MyObject1[4] |
| ### ref<MyObject1> @ 0x7fff136845c8 created via default constructor |
| ### ref<MyObject1> @ 0x7fff136845c8 assigned via copy assignment pointer 0xee8310 |
| ### ref<MyObject1> @ 0x7fff136845a8 created via copy constructor with pointer 0xee8310 |
| MyObject1[4] |
| ### ref<MyObject1> @ 0x7fff136845a8 destroyed |
| ### ref<MyObject1> @ 0x7fff136845c8 destroyed |
| ### ref<MyObject1> @ 0x7fff136845c8 created via default constructor |
| ### ref<MyObject1> @ 0x7fff136845c8 assigned via copy assignment pointer 0xee8310 |
| MyObject1[4] |
| ### ref<MyObject1> @ 0x7fff136845c8 destroyed |
| ### ref<MyObject1> @ 0x7fff136845c8 created via default constructor |
| ### ref<MyObject1> @ 0x7fff136845c8 assigned via copy assignment pointer 0xee8310 |
| MyObject1[4] |
| ### ref<MyObject1> @ 0x7fff136845c8 destroyed |
| <example.MyObject1 object at 0x7f6a2c32aab0> |
| MyObject1[5] |
| ### ref<Object> @ 0x7fff136845c8 created via default constructor |
| ### ref<Object> @ 0x7fff136845c8 assigned via copy assignment pointer 0xee8470 |
| ### ref<Object> @ 0x7fff136845a8 created via copy constructor with pointer 0xee8470 |
| MyObject1[5] |
| ### ref<Object> @ 0x7fff136845a8 destroyed |
| ### ref<Object> @ 0x7fff136845c8 destroyed |
| ### ref<Object> @ 0x7fff136845c8 created via default constructor |
| ### ref<Object> @ 0x7fff136845c8 assigned via copy assignment pointer 0xee8470 |
| MyObject1[5] |
| ### ref<Object> @ 0x7fff136845c8 destroyed |
| ### ref<Object> @ 0x7fff136845c8 created via default constructor |
| ### ref<Object> @ 0x7fff136845c8 assigned via copy assignment pointer 0xee8470 |
| MyObject1[5] |
| ### ref<Object> @ 0x7fff136845c8 destroyed |
| MyObject1[5] |
| ### ref<MyObject1> @ 0x7fff136845c8 created via default constructor |
| ### ref<MyObject1> @ 0x7fff136845c8 assigned via copy assignment pointer 0xee8470 |
| ### ref<MyObject1> @ 0x7fff136845a8 created via copy constructor with pointer 0xee8470 |
| MyObject1[5] |
| ### ref<MyObject1> @ 0x7fff136845a8 destroyed |
| ### ref<MyObject1> @ 0x7fff136845c8 destroyed |
| ### ref<MyObject1> @ 0x7fff136845c8 created via default constructor |
| ### ref<MyObject1> @ 0x7fff136845c8 assigned via copy assignment pointer 0xee8470 |
| MyObject1[5] |
| ### ref<MyObject1> @ 0x7fff136845c8 destroyed |
| ### ref<MyObject1> @ 0x7fff136845c8 created via default constructor |
| ### ref<MyObject1> @ 0x7fff136845c8 assigned via copy assignment pointer 0xee8470 |
| MyObject1[5] |
| ### ref<MyObject1> @ 0x7fff136845c8 destroyed |
| <example.MyObject1 object at 0x7f6a2c32ab10> |
| MyObject1[6] |
| ### ref<Object> @ 0x7fff136845c8 created via default constructor |
| ### ref<Object> @ 0x7fff136845c8 assigned via copy assignment pointer 0xee95a0 |
| ### ref<Object> @ 0x7fff136845a8 created via copy constructor with pointer 0xee95a0 |
| MyObject1[6] |
| ### ref<Object> @ 0x7fff136845a8 destroyed |
| ### ref<Object> @ 0x7fff136845c8 destroyed |
| ### ref<Object> @ 0x7fff136845c8 created via default constructor |
| ### ref<Object> @ 0x7fff136845c8 assigned via copy assignment pointer 0xee95a0 |
| MyObject1[6] |
| ### ref<Object> @ 0x7fff136845c8 destroyed |
| ### ref<Object> @ 0x7fff136845c8 created via default constructor |
| ### ref<Object> @ 0x7fff136845c8 assigned via copy assignment pointer 0xee95a0 |
| MyObject1[6] |
| ### ref<Object> @ 0x7fff136845c8 destroyed |
| MyObject1[6] |
| ### ref<MyObject1> @ 0x7fff136845c8 created via default constructor |
| ### ref<MyObject1> @ 0x7fff136845c8 assigned via copy assignment pointer 0xee95a0 |
| ### ref<MyObject1> @ 0x7fff136845a8 created via copy constructor with pointer 0xee95a0 |
| MyObject1[6] |
| ### ref<MyObject1> @ 0x7fff136845a8 destroyed |
| ### ref<MyObject1> @ 0x7fff136845c8 destroyed |
| ### ref<MyObject1> @ 0x7fff136845c8 created via default constructor |
| ### ref<MyObject1> @ 0x7fff136845c8 assigned via copy assignment pointer 0xee95a0 |
| MyObject1[6] |
| ### ref<MyObject1> @ 0x7fff136845c8 destroyed |
| ### ref<MyObject1> @ 0x7fff136845c8 created via default constructor |
| ### ref<MyObject1> @ 0x7fff136845c8 assigned via copy assignment pointer 0xee95a0 |
| MyObject1[6] |
| ### ref<MyObject1> @ 0x7fff136845c8 destroyed |
| 7 |
| ### Object @ 0xee97f0 created via default constructor |
| ### MyObject1 @ 0xee97f0 created MyObject1[7] |
| ### ref<MyObject1> @ 0x7f6a2c32ab08 created from pointer 0xee97f0 |
| MyObject1[7] |
| ### MyObject1 @ 0xee97f0 destroyed |
| ### Object @ 0xee97f0 destroyed |
| ### ref<MyObject1> @ 0x7f6a2c32ab08 destroyed |
| ### ref<MyObject1> @ 0x7fff136845c8 created via default constructor |
| ### Object @ 0xee99e0 created via default constructor |
| ### MyObject1 @ 0xee99e0 created MyObject1[7] |
| ### ref<MyObject1> @ 0x7f6a2c32ab08 created from pointer 0xee99e0 |
| ### ref<MyObject1> @ 0x7fff136845c8 assigned via copy assignment pointer 0xee99e0 |
| ### ref<MyObject1> @ 0x7fff136845a8 created via copy constructor with pointer 0xee99e0 |
| MyObject1[7] |
| ### ref<MyObject1> @ 0x7fff136845a8 destroyed |
| ### ref<MyObject1> @ 0x7fff136845c8 destroyed |
| ### MyObject1 @ 0xee99e0 destroyed |
| ### Object @ 0xee99e0 destroyed |
| ### ref<MyObject1> @ 0x7f6a2c32ab08 destroyed |
| ### ref<MyObject1> @ 0x7fff136845c8 created via default constructor |
| ### Object @ 0xee97f0 created via default constructor |
| ### MyObject1 @ 0xee97f0 created MyObject1[7] |
| ### ref<MyObject1> @ 0x7f6a2c32ab08 created from pointer 0xee97f0 |
| ### ref<MyObject1> @ 0x7fff136845c8 assigned via copy assignment pointer 0xee97f0 |
| MyObject1[7] |
| ### ref<MyObject1> @ 0x7fff136845c8 destroyed |
| ### MyObject1 @ 0xee97f0 destroyed |
| ### Object @ 0xee97f0 destroyed |
| ### ref<MyObject1> @ 0x7f6a2c32ab08 destroyed |
| ### ref<MyObject1> @ 0x7fff136845c8 created via default constructor |
| ### Object @ 0xee99e0 created via default constructor |
| ### MyObject1 @ 0xee99e0 created MyObject1[7] |
| ### ref<MyObject1> @ 0x7f6a2c32ab08 created from pointer 0xee99e0 |
| ### ref<MyObject1> @ 0x7fff136845c8 assigned via copy assignment pointer 0xee99e0 |
| MyObject1[7] |
| ### ref<MyObject1> @ 0x7fff136845c8 destroyed |
| ### MyObject1 @ 0xee99e0 destroyed |
| ### Object @ 0xee99e0 destroyed |
| ### ref<MyObject1> @ 0x7f6a2c32ab08 destroyed |
| ### MyObject1 @ 0xee95a0 destroyed |
| ### Object @ 0xee95a0 destroyed |
| ### ref<MyObject1> @ 0x7f6a2c32ab38 destroyed |
| ### MyObject1 @ 0xee8470 destroyed |
| ### Object @ 0xee8470 destroyed |
| ### ref<MyObject1> @ 0x7f6a2c32aad8 destroyed |
| ### MyObject1 @ 0xee8310 destroyed |
| ### Object @ 0xee8310 destroyed |
| ### ref<MyObject1> @ 0x7f6a2e03c4a8 destroyed |
| ### MyObject2 @ 0xe43f50 created MyObject2[8] |
| ### MyObject2 @ 0xee95a0 created MyObject2[6] |
| ### MyObject2 @ 0xee95d0 created MyObject2[7] |
| <example.MyObject2 object at 0x7f6a2dfc8768> |
| MyObject2[8] |
| MyObject2[8] |
| MyObject2[8] |
| MyObject2[8] |
| <example.MyObject2 object at 0x7f6a2dfc86c0> |
| MyObject2[6] |
| MyObject2[6] |
| MyObject2[6] |
| MyObject2[6] |
| <example.MyObject2 object at 0x7f6a2c32d030> |
| MyObject2[7] |
| MyObject2[7] |
| MyObject2[7] |
| MyObject2[7] |
| ### MyObject2 @ 0xee95a0 destroyed |
| ### MyObject2 @ 0xe43f50 destroyed |
| ### MyObject3 @ 0xee9ac0 created MyObject3[9] |
| ### MyObject3 @ 0xe43f90 created MyObject3[8] |
| ### MyObject3 @ 0xeea7d0 created MyObject3[9] |
| ### MyObject2 @ 0xee95d0 destroyed |
| <example.MyObject3 object at 0x7f6a2dfc8768> |
| MyObject3[9] |
| MyObject3[9] |
| MyObject3[9] |
| MyObject3[9] |
| <example.MyObject3 object at 0x7f6a2dfc86c0> |
| MyObject3[8] |
| MyObject3[8] |
| MyObject3[8] |
| MyObject3[8] |
| <example.MyObject3 object at 0x7f6a2c32d068> |
| MyObject3[9] |
| MyObject3[9] |
| MyObject3[9] |
| MyObject3[9] |
| ### MyObject3 @ 0xe43f90 destroyed |
| ### MyObject3 @ 0xee9ac0 destroyed |
| Instances not destroyed: [0, 0, 0, 1, 0] |
| ### MyObject3 @ 0xeea7d0 destroyed |
| Instances not destroyed: [0, 0, 0, 0, 0] |
| Object value constructions: [[], ['MyObject1[1]', 'MyObject1[2]', 'MyObject1[3]', 'MyObject1[4]', 'MyObject1[5]', 'MyObject1[6]', 'MyObject1[7]', 'MyObject1[7]', 'MyObject1[7]', 'MyObject1[7]'], ['MyObject2[8]', 'MyObject2[6]', 'MyObject2[7]'], ['MyObject3[9]', 'MyObject3[8]', 'MyObject3[9]'], ['from pointer', 'from pointer', 'from pointer', 'from pointer', 'from pointer', 'from pointer', 'from pointer', 'from pointer', 'from pointer', 'from pointer']] |
| Default constructions: [10, 0, 0, 0, 30] |
| Copy constructions: [0, 0, 0, 0, 12] |
| Copy assignments: [0, 0, 0, 0, 30] |
| Move assignments: [0, 0, 0, 0, 0] |