Can we raise `ArgumentError` here? Instead of inventing new object for same purpose, can we reuse existing one with appropriate message?