implemented var checks, and q3