foo -> UMethod (name = foo)
Int -> USimpleNameReferenceExpression (identifier = Int)
    mask -> ULocalVariable (name = mask)
    Int -> USimpleNameReferenceExpression (identifier = Int)
    x -> ULocalVariable (name = x)
    Int -> USimpleNameReferenceExpression (identifier = Int)
    pos -> ULocalVariable (name = pos)
    x -> USimpleNameReferenceExpression (identifier = x)
    and -> USimpleNameReferenceExpression (identifier = and)
    mask -> USimpleNameReferenceExpression (identifier = mask)
    max -> ULocalVariable (name = max)
    x -> USimpleNameReferenceExpression (identifier = x)
    or -> USimpleNameReferenceExpression (identifier = or)
    mask -> USimpleNameReferenceExpression (identifier = mask)
    zebra -> ULocalVariable (name = zebra)
    x -> USimpleNameReferenceExpression (identifier = x)
    xor -> USimpleNameReferenceExpression (identifier = xor)
    mask -> USimpleNameReferenceExpression (identifier = mask)
    signed -> ULocalVariable (name = signed)
    x -> USimpleNameReferenceExpression (identifier = x)
    shr -> USimpleNameReferenceExpression (identifier = shr)
    one -> ULocalVariable (name = one)
    x -> USimpleNameReferenceExpression (identifier = x)
    ushr -> USimpleNameReferenceExpression (identifier = ushr)
    zero -> ULocalVariable (name = zero)
    x -> USimpleNameReferenceExpression (identifier = x)
    shl -> USimpleNameReferenceExpression (identifier = shl)
    pos -> USimpleNameReferenceExpression (identifier = pos)
    + -> USimpleNameReferenceExpression (identifier = +)
    zero -> USimpleNameReferenceExpression (identifier = zero)
    - -> USimpleNameReferenceExpression (identifier = -)
    zebra -> USimpleNameReferenceExpression (identifier = zebra)
    * -> USimpleNameReferenceExpression (identifier = *)
    signed -> USimpleNameReferenceExpression (identifier = signed)
    / -> USimpleNameReferenceExpression (identifier = /)
    one -> USimpleNameReferenceExpression (identifier = one)
bar -> UMethod (name = bar)
Long -> USimpleNameReferenceExpression (identifier = Long)
    mask -> ULocalVariable (name = mask)
    Long -> USimpleNameReferenceExpression (identifier = Long)
    x -> ULocalVariable (name = x)
    Long -> USimpleNameReferenceExpression (identifier = Long)
    pos -> ULocalVariable (name = pos)
    x -> USimpleNameReferenceExpression (identifier = x)
    and -> USimpleNameReferenceExpression (identifier = and)
    mask -> USimpleNameReferenceExpression (identifier = mask)
    max -> ULocalVariable (name = max)
    x -> USimpleNameReferenceExpression (identifier = x)
    or -> USimpleNameReferenceExpression (identifier = or)
    mask -> USimpleNameReferenceExpression (identifier = mask)
    zebra -> ULocalVariable (name = zebra)
    x -> USimpleNameReferenceExpression (identifier = x)
    xor -> USimpleNameReferenceExpression (identifier = xor)
    mask -> USimpleNameReferenceExpression (identifier = mask)
    signed -> ULocalVariable (name = signed)
    x -> USimpleNameReferenceExpression (identifier = x)
    shr -> USimpleNameReferenceExpression (identifier = shr)
    one -> ULocalVariable (name = one)
    x -> USimpleNameReferenceExpression (identifier = x)
    ushr -> USimpleNameReferenceExpression (identifier = ushr)
    zero -> ULocalVariable (name = zero)
    x -> USimpleNameReferenceExpression (identifier = x)
    shl -> USimpleNameReferenceExpression (identifier = shl)
    pos -> USimpleNameReferenceExpression (identifier = pos)
    + -> USimpleNameReferenceExpression (identifier = +)
    zero -> USimpleNameReferenceExpression (identifier = zero)
    - -> USimpleNameReferenceExpression (identifier = -)
    zebra -> USimpleNameReferenceExpression (identifier = zebra)
    * -> USimpleNameReferenceExpression (identifier = *)
    signed -> USimpleNameReferenceExpression (identifier = signed)
    / -> USimpleNameReferenceExpression (identifier = /)
    one -> USimpleNameReferenceExpression (identifier = one)
