Maybe factor out the several `oneOrMore(Digit) ~> (_.toLong)` into a helper rule?