arithmetic now implemented more cleanly