fix from_json