Start to implement cuboid version