move decl around to read better