raising a ArgumentError over a custom error
ignoring more stuffs