this is when i remembered that array indices are a thing that are useful, and those macros were silly