customShape exists, framework for setting shape exists
Square support