Python implementation now uses Caesar