refractors argument handling