most of this complexity is to support questions with the same id that are in different groups and therefore have different paths (which is fine)