replaced unordered maps with vectors