custom exception handling, arguments count checker implemented