refactor events and parser, change gps method and wait for second match