adding query struct and list methods