DRY up parse and calculate methods