No point in having parseImpl private...
Propogate exception using a better suited exception type
Remove unnecessary unboxing
Enabling static parseImpl on few more places