basic indexing, based on hashmap and search by 'contains', but everything plugged well