why using instance properties for this instead of local variables passed as argument to ``getProvider`` ?