finished implementing packing