throw more descriptive error