Fix type param issue in decode
Fixes for macro syntax changes
Update for ops changes: Add etc take their parameters by value.