data Int = Zero | NonZero Sign PositiveInt data PositiveInt = One | Succ PositiveInt data Sign = Positive | Negative