Refactored pico_protocol.c