split out proton data parsing to it's own class