#207 raise more helpful exception, and implement fill