added z dimension