Theoretically, QueryExtension can return `null`. need to check the results where the method is used and handle it appropriately.