input arguments as hash