do not override #to_hash