implement walker (update edge weight by counting) not finished yet