implement flexible sphere