Fixing logic to account for operator precedence.
Fixing how error is propagated.