use var name obj instead of x internally for clarity