avoid recursion issues as we otherwise shadow the system json module