moving out box abstraction