mild rework for assembly recursion so they don't calculate unneeded stuff