1. Nothing catches this exception, so it will be shown to the user. Not good.
Please add a TODO here or an issue on github that unsolvable problems during parsing need to be handled.
2. if ```(length)``` is wrong then the ```else``` is also reached, but ```length.unit``` will not work.