updated toJSON