refactored form and shape to update values and view