fixed missing semicolons due to macros, also,  the trait Not now takes self by value