use 'exports' as outer-scope instead of 'this'. if no exports, let it be window or default outer-this