using final statements where appropriate