Add History to the description.
Key name from path utility function.
Find or create keys. Key reuse!

Hmm, this is a performance risk. Be wary.
Test find or create key.
Implement key conversion.
Only update key if we should.