finally, enough context to fit my entire codebase AND my excuses for why it doesn't work