fixed Protocol::save