https://crimsondawn.net/thinking-methods/