added shape data gen