implement dispatcher parser