Each query sets its query type instead of passing it to build_query()