This can be merged once unboxed newtypes are allowed.
This will create a new commit in order to revert the existing changes.