implementing element packer