proper json encoding