initial version, to add FIFO queue and stack
refine map traverse
Use simple vector to implement stack