added cube. it works but incomplete.