boxes behave correctly, with reference counters to prevent memory leakage
added images