populating the subset map and threading it through to the right places