More info in comments on file.
Incorporates downcasing. Because why not.