Macros, such as org and org0 break the scope, so referencing a local lable after an even will make assembly fail, despite there being no need to. Changing variable names such as paddingSoFar to .paddingSoFar should solve this issue (though, a name collision is of concern here)