end to end parser and dt rework. more pythonic.