fixed 2028 2029 JSON/JS incompatibility