added shapes and shape cache