more fix in protocol.js