use legacyDatetime for ctime in contract, so search can parse it in jsons