Function name: unicode::main
Raw bytes (58): 0x[01, 01, 02, 05, 01, 01, 0d, 0a, 01, 0e, 01, 00, 0a, 02, 01, 09, 00, 0c, 05, 00, 10, 00, 1b, 02, 00, 1c, 00, 28, 01, 02, 08, 00, 23, 09, 00, 29, 00, 44, 0d, 00, 47, 02, 06, 06, 02, 05, 00, 06, 01, 02, 05, 00, 0b, 01, 01, 01, 00, 02]
Number of files: 1
- file 0 => $DIR/unicode.rs
Number of expressions: 2
- expression 0 operands: lhs = Counter(1), rhs = Counter(0)
- expression 1 operands: lhs = Counter(0), rhs = Counter(3)
Number of file 0 mappings: 10
- Code(Counter(0)) at (prev + 14, 1) to (start + 0, 10)
- Code(Expression(0, Sub)) at (prev + 1, 9) to (start + 0, 12)
    = (c1 - c0)
- Code(Counter(1)) at (prev + 0, 16) to (start + 0, 27)
- Code(Expression(0, Sub)) at (prev + 0, 28) to (start + 0, 40)
    = (c1 - c0)
- Code(Counter(0)) at (prev + 2, 8) to (start + 0, 35)
- Code(Counter(2)) at (prev + 0, 41) to (start + 0, 68)
- Code(Counter(3)) at (prev + 0, 71) to (start + 2, 6)
- Code(Expression(1, Sub)) at (prev + 2, 5) to (start + 0, 6)
    = (c0 - c3)
- Code(Counter(0)) at (prev + 2, 5) to (start + 0, 11)
- Code(Counter(0)) at (prev + 1, 1) to (start + 0, 2)
Highest counter ID seen: c3

Function name: unicode::他 (unused)
Raw bytes (14): 0x[01, 01, 00, 02, 00, 1e, 19, 00, 22, 00, 00, 24, 00, 25]
Number of files: 1
- file 0 => $DIR/unicode.rs
Number of expressions: 0
Number of file 0 mappings: 2
- Code(Zero) at (prev + 30, 25) to (start + 0, 34)
- Code(Zero) at (prev + 0, 36) to (start + 0, 37)
Highest counter ID seen: (none)

Function name: unicode::申し訳ございません
Raw bytes (19): 0x[01, 01, 00, 03, 01, 18, 01, 00, 29, 01, 01, 05, 00, 19, 01, 01, 01, 00, 02]
Number of files: 1
- file 0 => $DIR/unicode.rs
Number of expressions: 0
Number of file 0 mappings: 3
- Code(Counter(0)) at (prev + 24, 1) to (start + 0, 41)
- Code(Counter(0)) at (prev + 1, 5) to (start + 0, 25)
- Code(Counter(0)) at (prev + 1, 1) to (start + 0, 2)
Highest counter ID seen: c0

