move global parameter to self