temporary measure until debug macros can be made constexpr
some working variables need to be precomputed. it makes sense to do this in a base class.