speedup lists and add bidiMap