aboutsummaryrefslogtreecommitdiff
path: root/docs/unicode_UTF-8-test.txt
blob: abd16f7253bf7254ad1ae04cb5bee8d8c47e407a (plain)
ofshex dumpascii
0000 55 54 46 2d 38 20 64 65 63 6f 64 65 72 20 63 61 70 61 62 69 6c 69 74 79 20 61 6e 64 20 73 74 72 UTF-8.decoder.capability.and.str
0020 65 73 73 20 74 65 73 74 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ess.test.-----------------------
0040 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 4d 61 72 6b 75 73 20 4b 75 68 6e 20 3c -----------------..Markus.Kuhn.<
0060 68 74 74 70 3a 2f 2f 77 77 77 2e 63 6c 2e 63 61 6d 2e 61 63 2e 75 6b 2f 7e 6d 67 6b 32 35 2f 3e http://www.cl.cam.ac.uk/~mgk25/>
0080 20 2d 20 32 30 30 33 2d 30 32 2d 31 39 0a 0a 54 68 69 73 20 74 65 73 74 20 66 69 6c 65 20 63 61 .-.2003-02-19..This.test.file.ca
00a0 6e 20 68 65 6c 70 20 79 6f 75 20 65 78 61 6d 69 6e 65 2c 20 68 6f 77 20 79 6f 75 72 20 55 54 46 n.help.you.examine,.how.your.UTF
00c0 2d 38 20 64 65 63 6f 64 65 72 20 68 61 6e 64 6c 65 73 0a 76 61 72 69 6f 75 73 20 74 79 70 65 73 -8.decoder.handles.various.types
00e0 20 6f 66 20 63 6f 72 72 65 63 74 2c 20 6d 61 6c 66 6f 72 6d 65 64 2c 20 6f 72 20 6f 74 68 65 72 .of.correct,.malformed,.or.other
0100 77 69 73 65 20 69 6e 74 65 72 65 73 74 69 6e 67 20 55 54 46 2d 38 0a 73 65 71 75 65 6e 63 65 73 wise.interesting.UTF-8.sequences
0120 2e 20 54 68 69 73 20 66 69 6c 65 20 69 73 20 6e 6f 74 20 6d 65 61 6e 74 20 74 6f 20 62 65 20 61 ..This.file.is.not.meant.to.be.a
0140 20 63 6f 6e 66 6f 72 6d 61 6e 63 65 20 74 65 73 74 2e 20 49 74 20 64 6f 65 73 0a 6e 6f 74 20 70 .conformance.test..It.does.not.p
0160 72 65 73 63 72 69 62 65 73 20 61 6e 79 20 70 61 72 74 69 63 75 6c 61 72 20 6f 75 74 63 6f 6d 65 rescribes.any.particular.outcome
0180 20 61 6e 64 20 74 68 65 72 65 66 6f 72 65 20 74 68 65 72 65 20 69 73 20 6e 6f 20 77 61 79 20 74 .and.therefore.there.is.no.way.t
01a0 6f 0a 22 70 61 73 73 22 20 6f 72 20 22 66 61 69 6c 22 20 74 68 69 73 20 74 65 73 74 20 66 69 6c o."pass".or."fail".this.test.fil
01c0 65 2c 20 65 76 65 6e 20 74 68 6f 75 67 68 20 74 68 65 20 74 65 78 74 73 20 73 75 67 67 65 73 74 e,.even.though.the.texts.suggest
01e0 73 20 61 0a 70 72 65 66 65 72 61 62 6c 65 20 64 65 63 6f 64 65 72 20 62 65 68 61 76 69 6f 75 72 s.a.preferable.decoder.behaviour
0200 20 61 74 20 73 6f 6d 65 20 70 6c 61 63 65 73 2e 20 54 68 65 20 61 69 6d 20 69 73 20 69 6e 73 74 .at.some.places..The.aim.is.inst
0220 65 61 64 20 74 6f 0a 68 65 6c 70 20 79 6f 75 20 74 68 69 6e 6b 20 61 62 6f 75 74 20 61 6e 64 20 ead.to.help.you.think.about.and.
0240 74 65 73 74 20 74 68 65 20 62 65 68 61 76 69 6f 75 72 20 6f 66 20 79 6f 75 72 20 55 54 46 2d 38 test.the.behaviour.of.your.UTF-8
0260 20 6f 6e 20 61 0a 73 79 73 74 65 6d 61 74 69 63 20 63 6f 6c 6c 65 63 74 69 6f 6e 20 6f 66 20 75 .on.a.systematic.collection.of.u
0280 6e 75 73 75 61 6c 20 69 6e 70 75 74 73 2e 20 45 78 70 65 72 69 65 6e 63 65 20 73 6f 20 66 61 72 nusual.inputs..Experience.so.far
02a0 20 73 75 67 67 65 73 74 73 0a 74 68 61 74 20 6d 6f 73 74 20 66 69 72 73 74 2d 74 69 6d 65 20 61 .suggests.that.most.first-time.a
02c0 75 74 68 6f 72 73 20 6f 66 20 55 54 46 2d 38 20 64 65 63 6f 64 65 72 73 20 66 69 6e 64 20 61 74 uthors.of.UTF-8.decoders.find.at
02e0 20 6c 65 61 73 74 20 6f 6e 65 0a 73 65 72 69 6f 75 73 20 70 72 6f 62 6c 65 6d 20 69 6e 20 74 68 .least.one.serious.problem.in.th
0300 65 69 72 20 64 65 63 6f 64 65 72 20 62 79 20 75 73 69 6e 67 20 74 68 69 73 20 66 69 6c 65 2e 0a eir.decoder.by.using.this.file..
0320 0a 54 68 65 20 74 65 73 74 20 6c 69 6e 65 73 20 62 65 6c 6f 77 20 63 6f 76 65 72 20 62 6f 75 6e .The.test.lines.below.cover.boun
0340 64 61 72 79 20 63 6f 6e 64 69 74 69 6f 6e 73 2c 20 6d 61 6c 66 6f 72 6d 65 64 20 55 54 46 2d 38 dary.conditions,.malformed.UTF-8
0360 0a 73 65 71 75 65 6e 63 65 73 20 61 73 20 77 65 6c 6c 20 61 73 20 63 6f 72 72 65 63 74 6c 79 20 .sequences.as.well.as.correctly.
0380 65 6e 63 6f 64 65 64 20 55 54 46 2d 38 20 73 65 71 75 65 6e 63 65 73 20 6f 66 20 55 6e 69 63 6f encoded.UTF-8.sequences.of.Unico
03a0 64 65 20 63 6f 64 65 0a 70 6f 69 6e 74 73 20 74 68 61 74 20 73 68 6f 75 6c 64 20 6e 65 76 65 72 de.code.points.that.should.never
03c0 20 6f 63 63 75 72 20 69 6e 20 61 20 63 6f 72 72 65 63 74 20 55 54 46 2d 38 20 66 69 6c 65 2e 0a .occur.in.a.correct.UTF-8.file..
03e0 0a 41 63 63 6f 72 64 69 6e 67 20 74 6f 20 49 53 4f 20 31 30 36 34 36 2d 31 3a 32 30 30 30 2c 20 .According.to.ISO.10646-1:2000,.
0400 73 65 63 74 69 6f 6e 73 20 44 2e 37 20 61 6e 64 20 32 2e 33 63 2c 20 61 20 64 65 76 69 63 65 0a sections.D.7.and.2.3c,.a.device.
0420 72 65 63 65 69 76 69 6e 67 20 55 54 46 2d 38 20 73 68 61 6c 6c 20 69 6e 74 65 72 70 72 65 74 20 receiving.UTF-8.shall.interpret.
0440 61 20 22 6d 61 6c 66 6f 72 6d 65 64 20 73 65 71 75 65 6e 63 65 20 69 6e 20 74 68 65 20 73 61 6d a."malformed.sequence.in.the.sam
0460 65 20 77 61 79 0a 74 68 61 74 20 69 74 20 69 6e 74 65 72 70 72 65 74 73 20 61 20 63 68 61 72 61 e.way.that.it.interprets.a.chara
0480 63 74 65 72 20 74 68 61 74 20 69 73 20 6f 75 74 73 69 64 65 20 74 68 65 20 61 64 6f 70 74 65 64 cter.that.is.outside.the.adopted
04a0 20 73 75 62 73 65 74 22 20 61 6e 64 0a 22 63 68 61 72 61 63 74 65 72 73 20 74 68 61 74 20 61 72 .subset".and."characters.that.ar
04c0 65 20 6e 6f 74 20 77 69 74 68 69 6e 20 74 68 65 20 61 64 6f 70 74 65 64 20 73 75 62 73 65 74 20 e.not.within.the.adopted.subset.
04e0 73 68 61 6c 6c 20 62 65 20 69 6e 64 69 63 61 74 65 64 0a 74 6f 20 74 68 65 20 75 73 65 72 22 20 shall.be.indicated.to.the.user".
0500 62 79 20 61 20 72 65 63 65 69 76 69 6e 67 20 64 65 76 69 63 65 2e 20 41 20 71 75 69 74 65 20 63 by.a.receiving.device..A.quite.c
0520 6f 6d 6d 6f 6e 6c 79 20 75 73 65 64 20 61 70 70 72 6f 61 63 68 20 69 6e 0a 55 54 46 2d 38 20 64 ommonly.used.approach.in.UTF-8.d
0540 65 63 6f 64 65 72 73 20 69 73 20 74 6f 20 72 65 70 6c 61 63 65 20 61 6e 79 20 6d 61 6c 66 6f 72 ecoders.is.to.replace.any.malfor
0560 6d 65 64 20 55 54 46 2d 38 20 73 65 71 75 65 6e 63 65 20 62 79 20 61 0a 72 65 70 6c 61 63 65 6d med.UTF-8.sequence.by.a.replacem
0580 65 6e 74 20 63 68 61 72 61 63 74 65 72 20 28 55 2b 46 46 46 44 29 2c 20 77 68 69 63 68 20 6c 6f ent.character.(U+FFFD),.which.lo
05a0 6f 6b 73 20 61 20 62 69 74 20 6c 69 6b 65 20 61 6e 20 69 6e 76 65 72 74 65 64 0a 71 75 65 73 74 oks.a.bit.like.an.inverted.quest
05c0 69 6f 6e 20 6d 61 72 6b 2c 20 6f 72 20 61 20 73 69 6d 69 6c 61 72 20 73 79 6d 62 6f 6c 2e 20 49 ion.mark,.or.a.similar.symbol..I
05e0 74 20 6d 69 67 68 74 20 62 65 20 61 20 67 6f 6f 64 20 69 64 65 61 20 74 6f 0a 76 69 73 75 61 6c t.might.be.a.good.idea.to.visual
0600 6c 79 20 64 69 73 74 69 6e 67 75 69 73 68 20 61 20 6d 61 6c 66 6f 72 6d 65 64 20 55 54 46 2d 38 ly.distinguish.a.malformed.UTF-8
0620 20 73 65 71 75 65 6e 63 65 20 66 72 6f 6d 20 61 20 63 6f 72 72 65 63 74 6c 79 0a 65 6e 63 6f 64 .sequence.from.a.correctly.encod
0640 65 64 20 55 6e 69 63 6f 64 65 20 63 68 61 72 61 63 74 65 72 20 74 68 61 74 20 69 73 20 6a 75 73 ed.Unicode.character.that.is.jus
0660 74 20 6e 6f 74 20 61 76 61 69 6c 61 62 6c 65 20 69 6e 20 74 68 65 20 63 75 72 72 65 6e 74 0a 66 t.not.available.in.the.current.f
0680 6f 6e 74 20 62 75 74 20 6f 74 68 65 72 77 69 73 65 20 66 75 6c 6c 79 20 6c 65 67 61 6c 2c 20 65 ont.but.otherwise.fully.legal,.e
06a0 76 65 6e 20 74 68 6f 75 67 68 20 49 53 4f 20 31 30 36 34 36 2d 31 20 64 6f 65 73 6e 27 74 0a 6d ven.though.ISO.10646-1.doesn't.m
06c0 61 6e 64 61 74 65 20 74 68 69 73 2e 20 49 6e 20 61 6e 79 20 63 61 73 65 2c 20 6a 75 73 74 20 69 andate.this..In.any.case,.just.i
06e0 67 6e 6f 72 69 6e 67 20 6d 61 6c 66 6f 72 6d 65 64 20 73 65 71 75 65 6e 63 65 73 20 6f 72 0a 75 gnoring.malformed.sequences.or.u
0700 6e 61 76 61 69 6c 61 62 6c 65 20 63 68 61 72 61 63 74 65 72 73 20 64 6f 65 73 20 6e 6f 74 20 63 navailable.characters.does.not.c
0720 6f 6e 66 6f 72 6d 20 74 6f 20 49 53 4f 20 31 30 36 34 36 2c 20 77 69 6c 6c 20 6d 61 6b 65 0a 64 onform.to.ISO.10646,.will.make.d
0740 65 62 75 67 67 69 6e 67 20 6d 6f 72 65 20 64 69 66 66 69 63 75 6c 74 2c 20 61 6e 64 20 63 61 6e ebugging.more.difficult,.and.can
0760 20 6c 65 61 64 20 74 6f 20 75 73 65 72 20 63 6f 6e 66 75 73 69 6f 6e 2e 0a 0a 50 6c 65 61 73 65 .lead.to.user.confusion...Please
0780 20 63 68 65 63 6b 2c 20 77 68 65 74 68 65 72 20 61 20 6d 61 6c 66 6f 72 6d 65 64 20 55 54 46 2d .check,.whether.a.malformed.UTF-
07a0 38 20 73 65 71 75 65 6e 63 65 20 69 73 20 28 31 29 20 72 65 70 72 65 73 65 6e 74 65 64 20 61 74 8.sequence.is.(1).represented.at
07c0 0a 61 6c 6c 2c 20 28 32 29 20 72 65 70 72 65 73 65 6e 74 65 64 20 62 79 20 65 78 61 63 74 6c 79 .all,.(2).represented.by.exactly
07e0 20 6f 6e 65 20 73 69 6e 67 6c 65 20 72 65 70 6c 61 63 65 6d 65 6e 74 20 63 68 61 72 61 63 74 65 .one.single.replacement.characte
0800 72 20 28 6f 72 0a 65 71 75 69 76 61 6c 65 6e 74 20 73 69 67 6e 61 6c 29 2c 20 61 6e 64 20 28 33 r.(or.equivalent.signal),.and.(3
0820 29 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 71 75 6f 74 61 74 69 6f 6e 20 6d 61 72 6b 20 61 ).the.following.quotation.mark.a
0840 66 74 65 72 20 61 6e 0a 69 6c 6c 65 67 61 6c 20 55 54 46 2d 38 20 73 65 71 75 65 6e 63 65 20 69 fter.an.illegal.UTF-8.sequence.i
0860 73 20 63 6f 72 72 65 63 74 6c 79 20 64 69 73 70 6c 61 79 65 64 2c 20 69 2e 65 2e 20 70 72 6f 70 s.correctly.displayed,.i.e..prop
0880 65 72 0a 72 65 73 79 6e 63 68 72 6f 6e 69 7a 61 74 69 6f 6e 20 74 61 6b 65 73 20 70 6c 61 63 65 er.resynchronization.takes.place
08a0 20 69 6d 6d 61 67 65 61 74 65 6c 79 20 61 66 74 65 72 20 61 6e 79 20 6d 61 6c 66 6f 72 6d 65 64 .immageately.after.any.malformed
08c0 0a 73 65 71 75 65 6e 63 65 2e 20 54 68 69 73 20 66 69 6c 65 20 73 61 79 73 20 22 54 48 45 20 45 .sequence..This.file.says."THE.E
08e0 4e 44 22 20 69 6e 20 74 68 65 20 6c 61 73 74 20 6c 69 6e 65 2c 20 73 6f 20 69 66 20 79 6f 75 20 ND".in.the.last.line,.so.if.you.
0900 64 6f 6e 27 74 0a 73 65 65 20 74 68 61 74 2c 20 79 6f 75 72 20 64 65 63 6f 64 65 72 20 63 72 61 don't.see.that,.your.decoder.cra
0920 73 68 65 64 20 73 6f 6d 65 68 6f 77 20 62 65 66 6f 72 65 2c 20 77 68 69 63 68 20 73 68 6f 75 6c shed.somehow.before,.which.shoul
0940 64 20 61 6c 77 61 79 73 20 62 65 0a 63 61 75 73 65 20 66 6f 72 20 63 6f 6e 63 65 72 6e 2e 0a 0a d.always.be.cause.for.concern...
0960 41 6c 6c 20 6c 69 6e 65 73 20 69 6e 20 74 68 69 73 20 66 69 6c 65 20 61 72 65 20 65 78 61 63 74 All.lines.in.this.file.are.exact
0980 6c 79 20 37 39 20 63 68 61 72 61 63 74 65 72 73 20 6c 6f 6e 67 20 28 70 6c 75 73 20 74 68 65 20 ly.79.characters.long.(plus.the.
09a0 6c 69 6e 65 0a 66 65 65 64 29 2e 20 49 6e 20 61 64 64 69 74 69 6f 6e 2c 20 61 6c 6c 20 6c 69 6e line.feed)..In.addition,.all.lin
09c0 65 73 20 65 6e 64 20 77 69 74 68 20 22 7c 22 2c 20 65 78 63 65 70 74 20 66 6f 72 20 74 68 65 20 es.end.with."|",.except.for.the.
09e0 74 77 6f 20 74 65 73 74 0a 6c 69 6e 65 73 20 32 2e 31 2e 31 20 61 6e 64 20 32 2e 32 2e 31 2c 20 two.test.lines.2.1.1.and.2.2.1,.
0a00 77 68 69 63 68 20 63 6f 6e 74 61 69 6e 20 6e 6f 6e 2d 70 72 69 6e 74 61 62 6c 65 20 41 53 43 49 which.contain.non-printable.ASCI
0a20 49 20 63 6f 6e 74 72 6f 6c 73 0a 55 2b 30 30 30 30 20 61 6e 64 20 55 2b 30 30 37 46 2e 20 49 66 I.controls.U+0000.and.U+007F..If
0a40 20 79 6f 75 20 64 69 73 70 6c 61 79 20 74 68 69 73 20 66 69 6c 65 20 77 69 74 68 20 61 20 66 69 .you.display.this.file.with.a.fi
0a60 78 65 64 2d 77 69 64 74 68 20 66 6f 6e 74 2c 0a 74 68 65 73 65 20 22 7c 22 20 63 68 61 72 61 63 xed-width.font,.these."|".charac
0a80 74 65 72 73 20 73 68 6f 75 6c 64 20 61 6c 6c 20 6c 69 6e 65 20 75 70 20 69 6e 20 63 6f 6c 75 6d ters.should.all.line.up.in.colum
0aa0 6e 20 37 39 20 28 72 69 67 68 74 20 6d 61 72 67 69 6e 29 2e 0a 54 68 69 73 20 61 6c 6c 6f 77 73 n.79.(right.margin)..This.allows
0ac0 20 79 6f 75 20 74 6f 20 74 65 73 74 20 71 75 69 63 6b 6c 79 2c 20 77 68 65 74 68 65 72 20 79 6f .you.to.test.quickly,.whether.yo
0ae0 75 72 20 55 54 46 2d 38 20 64 65 63 6f 64 65 72 20 66 69 6e 64 73 20 74 68 65 0a 63 6f 72 72 65 ur.UTF-8.decoder.finds.the.corre
0b00 63 74 20 6e 75 6d 62 65 72 20 6f 66 20 63 68 61 72 61 63 74 65 72 73 20 69 6e 20 65 76 65 72 79 ct.number.of.characters.in.every
0b20 20 6c 69 6e 65 2c 20 74 68 61 74 20 69 73 20 77 68 65 74 68 65 72 20 65 61 63 68 0a 6d 61 6c 66 .line,.that.is.whether.each.malf
0b40 6f 72 6d 65 64 20 73 65 71 75 65 6e 63 65 73 20 69 73 20 72 65 70 6c 61 63 65 64 20 62 79 20 61 ormed.sequences.is.replaced.by.a
0b60 20 73 69 6e 67 6c 65 20 72 65 70 6c 61 63 65 6d 65 6e 74 20 63 68 61 72 61 63 74 65 72 2e 0a 0a .single.replacement.character...
0b80 4e 6f 74 65 20 74 68 61 74 20 61 73 20 61 6e 20 61 6c 74 65 72 6e 61 74 69 76 65 20 74 6f 20 74 Note.that.as.an.alternative.to.t
0ba0 68 65 20 6e 6f 74 69 6f 6e 20 6f 66 20 6d 61 6c 66 6f 72 6d 65 64 20 73 65 71 75 65 6e 63 65 20 he.notion.of.malformed.sequence.
0bc0 75 73 65 64 0a 68 65 72 65 2c 20 69 74 20 69 73 20 61 6c 73 6f 20 61 20 70 65 72 66 65 63 74 6c used.here,.it.is.also.a.perfectl
0be0 79 20 61 63 63 65 70 74 61 62 6c 65 20 28 61 6e 64 20 69 6e 20 73 6f 6d 65 20 73 69 74 75 61 74 y.acceptable.(and.in.some.situat
0c00 69 6f 6e 73 20 65 76 65 6e 0a 70 72 65 66 65 72 61 62 6c 65 29 20 73 6f 6c 75 74 69 6f 6e 20 74 ions.even.preferable).solution.t
0c20 6f 20 72 65 70 72 65 73 65 6e 74 20 65 61 63 68 20 69 6e 64 69 76 69 64 75 61 6c 20 62 79 74 65 o.represent.each.individual.byte
0c40 20 6f 66 20 61 20 6d 61 6c 66 6f 72 6d 65 64 0a 73 65 71 75 65 6e 63 65 20 62 79 20 61 20 72 65 .of.a.malformed.sequence.by.a.re
0c60 70 6c 61 63 65 6d 65 6e 74 20 63 68 61 72 61 63 74 65 72 2e 20 49 66 20 79 6f 75 20 66 6f 6c 6c placement.character..If.you.foll
0c80 6f 77 20 74 68 69 73 20 73 74 72 61 74 65 67 79 20 69 6e 0a 79 6f 75 72 20 64 65 63 6f 64 65 72 ow.this.strategy.in.your.decoder
0ca0 2c 20 74 68 65 6e 20 70 6c 65 61 73 65 20 69 67 6e 6f 72 65 20 74 68 65 20 22 7c 22 20 63 6f 6c ,.then.please.ignore.the."|".col
0cc0 75 6d 6e 2e 0a 0a 0a 48 65 72 65 20 63 6f 6d 65 20 74 68 65 20 74 65 73 74 73 3a 20 20 20 20 20 umn....Here.come.the.tests:.....
0ce0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
0d00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 .....................|..........
0d20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
0d40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
0d60 20 20 20 20 20 7c 0a 31 20 20 53 6f 6d 65 20 63 6f 72 72 65 63 74 20 55 54 46 2d 38 20 74 65 78 .....|.1..Some.correct.UTF-8.tex
0d80 74 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 t...............................
0da0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 .....................|..........
0dc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
0de0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
0e00 20 20 20 20 20 7c 0a 59 6f 75 20 73 68 6f 75 6c 64 20 73 65 65 20 74 68 65 20 47 72 65 65 6b 20 .....|.You.should.see.the.Greek.
0e20 77 6f 72 64 20 27 6b 6f 73 6d 65 27 3a 20 20 20 20 20 20 20 22 ce ba e1 bd b9 cf 83 ce bc ce b5 word.'kosme':......."...........
0e40 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 "..........................|....
0e60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
0e80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
0ea0 20 20 20 20 20 20 20 20 20 20 20 7c 0a 32 20 20 42 6f 75 6e 64 61 72 79 20 63 6f 6e 64 69 74 69 ...........|.2..Boundary.conditi
0ec0 6f 6e 20 74 65 73 74 20 63 61 73 65 73 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 on.test.cases...................
0ee0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 ...........................|....
0f00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
0f20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
0f40 20 20 20 20 20 20 20 20 20 20 20 7c 0a 32 2e 31 20 20 46 69 72 73 74 20 70 6f 73 73 69 62 6c 65 ...........|.2.1..First.possible
0f60 20 73 65 71 75 65 6e 63 65 20 6f 66 20 61 20 63 65 72 74 61 69 6e 20 6c 65 6e 67 74 68 20 20 20 .sequence.of.a.certain.length...
0f80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 ...........................|....
0fa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
0fc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
0fe0 20 20 20 20 20 20 20 20 20 20 20 7c 0a 32 2e 31 2e 31 20 20 31 20 62 79 74 65 20 20 28 55 2d 30 ...........|.2.1.1..1.byte..(U-0
1000 30 30 30 30 30 30 30 29 3a 20 20 20 20 20 20 20 20 22 00 22 20 20 20 20 20 20 20 20 20 20 20 20 0000000):........"."............
1020 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0a 32 2e 31 .............................2.1
1040 2e 32 20 20 32 20 62 79 74 65 73 20 28 55 2d 30 30 30 30 30 30 38 30 29 3a 20 20 20 20 20 20 20 .2..2.bytes.(U-00000080):.......
1060 20 22 c2 80 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .".."...........................
1080 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 32 2e 31 2e 33 20 20 33 20 62 79 74 65 73 20 28 55 2d ............|.2.1.3..3.bytes.(U-
10a0 30 30 30 30 30 38 30 30 29 3a 20 20 20 20 20 20 20 20 22 e0 a0 80 22 20 20 20 20 20 20 20 20 20 00000800):........"...".........
10c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a ..............................|.
10e0 32 2e 31 2e 34 20 20 34 20 62 79 74 65 73 20 28 55 2d 30 30 30 31 30 30 30 30 29 3a 20 20 20 20 2.1.4..4.bytes.(U-00010000):....
1100 20 20 20 20 22 f0 90 80 80 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...."...."......................
1120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 32 2e 31 2e 35 20 20 35 20 62 79 74 65 .................|.2.1.5..5.byte
1140 73 20 28 55 2d 30 30 32 30 30 30 30 30 29 3a 20 20 20 20 20 20 20 20 22 f8 88 80 80 80 22 20 20 s.(U-00200000):........"....."..
1160 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1180 20 20 20 20 20 7c 0a 32 2e 31 2e 36 20 20 36 20 62 79 74 65 73 20 28 55 2d 30 34 30 30 30 30 30 .....|.2.1.6..6.bytes.(U-0400000
11a0 30 29 3a 20 20 20 20 20 20 20 20 22 fc 84 80 80 80 80 22 20 20 20 20 20 20 20 20 20 20 20 20 20 0):........"......".............
11c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 ..........................|.....
11e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1200 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1220 20 20 20 20 20 20 20 20 20 20 7c 0a 32 2e 32 20 20 4c 61 73 74 20 70 6f 73 73 69 62 6c 65 20 73 ..........|.2.2..Last.possible.s
1240 65 71 75 65 6e 63 65 20 6f 66 20 61 20 63 65 72 74 61 69 6e 20 6c 65 6e 67 74 68 20 20 20 20 20 equence.of.a.certain.length.....
1260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 ..........................|.....
1280 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
12a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
12c0 20 20 20 20 20 20 20 20 20 20 7c 0a 32 2e 32 2e 31 20 20 31 20 62 79 74 65 20 20 28 55 2d 30 30 ..........|.2.2.1..1.byte..(U-00
12e0 30 30 30 30 37 46 29 3a 20 20 20 20 20 20 20 20 22 7f 22 20 20 20 20 20 20 20 20 20 20 20 20 20 00007F):........".".............
1300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0a 32 2e 32 2e ............................2.2.
1320 32 20 20 32 20 62 79 74 65 73 20 28 55 2d 30 30 30 30 30 37 46 46 29 3a 20 20 20 20 20 20 20 20 2..2.bytes.(U-000007FF):........
1340 22 df bf 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ".."............................
1360 20 20 20 20 20 20 20 20 20 20 20 7c 0a 32 2e 32 2e 33 20 20 33 20 62 79 74 65 73 20 28 55 2d 30 ...........|.2.2.3..3.bytes.(U-0
1380 30 30 30 46 46 46 46 29 3a 20 20 20 20 20 20 20 20 22 ef bf bf 22 20 20 20 20 20 20 20 20 20 20 000FFFF):........"..."..........
13a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 32 .............................|.2
13c0 2e 32 2e 34 20 20 34 20 62 79 74 65 73 20 28 55 2d 30 30 31 46 46 46 46 46 29 3a 20 20 20 20 20 .2.4..4.bytes.(U-001FFFFF):.....
13e0 20 20 20 22 f7 bf bf bf 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..."....".......................
1400 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 32 2e 32 2e 35 20 20 35 20 62 79 74 65 73 ................|.2.2.5..5.bytes
1420 20 28 55 2d 30 33 46 46 46 46 46 46 29 3a 20 20 20 20 20 20 20 20 22 fb bf bf bf bf 22 20 20 20 .(U-03FFFFFF):........"....."...
1440 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1460 20 20 20 20 7c 0a 32 2e 32 2e 36 20 20 36 20 62 79 74 65 73 20 28 55 2d 37 46 46 46 46 46 46 46 ....|.2.2.6..6.bytes.(U-7FFFFFFF
1480 29 3a 20 20 20 20 20 20 20 20 22 fd bf bf bf bf bf 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ):........"......"..............
14a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 .........................|......
14c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
14e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1500 20 20 20 20 20 20 20 20 20 7c 0a 32 2e 33 20 20 4f 74 68 65 72 20 62 6f 75 6e 64 61 72 79 20 63 .........|.2.3..Other.boundary.c
1520 6f 6e 64 69 74 69 6f 6e 73 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 onditions.......................
1540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 .........................|......
1560 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1580 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
15a0 20 20 20 20 20 20 20 20 20 7c 0a 32 2e 33 2e 31 20 20 55 2d 30 30 30 30 44 37 46 46 20 3d 20 65 .........|.2.3.1..U-0000D7FF.=.e
15c0 64 20 39 66 20 62 66 20 3d 20 22 ed 9f bf 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 d.9f.bf.=."...".................
15e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 32 2e 33 ...........................|.2.3
1600 2e 32 20 20 55 2d 30 30 30 30 45 30 30 30 20 3d 20 65 65 20 38 30 20 38 30 20 3d 20 22 ee 80 80 .2..U-0000E000.=.ee.80.80.=."...
1620 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 "...............................
1640 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 32 2e 33 2e 33 20 20 55 2d 30 30 30 30 46 46 46 44 .............|.2.3.3..U-0000FFFD
1660 20 3d 20 65 66 20 62 66 20 62 64 20 3d 20 22 ef bf bd 22 20 20 20 20 20 20 20 20 20 20 20 20 20 .=.ef.bf.bd.=."...".............
1680 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c ...............................|
16a0 0a 32 2e 33 2e 34 20 20 55 2d 30 30 31 30 46 46 46 46 20 3d 20 66 34 20 38 66 20 62 66 20 62 66 .2.3.4..U-0010FFFF.=.f4.8f.bf.bf
16c0 20 3d 20 22 f4 8f bf bf 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .=."....".......................
16e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 32 2e 33 2e 35 20 20 55 2d 30 30 31 ..................|.2.3.5..U-001
1700 31 30 30 30 30 20 3d 20 66 34 20 39 30 20 38 30 20 38 30 20 3d 20 22 f4 90 80 80 22 20 20 20 20 10000.=.f4.90.80.80.=."...."....
1720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1740 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....|..........................
1760 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1780 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 33 20 20 4d 61 6c 66 6f 72 .....................|.3..Malfor
17a0 6d 65 64 20 73 65 71 75 65 6e 63 65 73 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 med.sequences...................
17c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
17e0 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....|..........................
1800 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1820 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 33 2e 31 20 20 55 6e 65 78 .....................|.3.1..Unex
1840 70 65 63 74 65 64 20 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 20 62 79 74 65 73 20 20 20 20 20 20 20 pected.continuation.bytes.......
1860 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1880 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....|..........................
18a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
18c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 45 61 63 68 20 75 6e 65 78 .....................|.Each.unex
18e0 70 65 63 74 65 64 20 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 20 62 79 74 65 20 73 68 6f 75 6c 64 20 pected.continuation.byte.should.
1900 62 65 20 73 65 70 61 72 61 74 65 6c 79 20 73 69 67 6e 61 6c 6c 65 64 20 61 73 20 61 20 20 20 20 be.separately.signalled.as.a....
1920 20 20 20 20 20 7c 0a 6d 61 6c 66 6f 72 6d 65 64 20 73 65 71 75 65 6e 63 65 20 6f 66 20 69 74 73 .....|.malformed.sequence.of.its
1940 20 6f 77 6e 2e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .own............................
1960 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 .....................|..........
1980 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
19a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
19c0 20 20 20 20 20 7c 0a 33 2e 31 2e 31 20 20 46 69 72 73 74 20 63 6f 6e 74 69 6e 75 61 74 69 6f 6e .....|.3.1.1..First.continuation
19e0 20 62 79 74 65 20 30 78 38 30 3a 20 22 80 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .byte.0x80:.".".................
1a00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 33 2e 31 2e 32 20 20 4c 61 .....................|.3.1.2..La
1a20 73 74 20 20 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 20 62 79 74 65 20 30 78 62 66 3a 20 22 bf 22 20 st..continuation.byte.0xbf:.".".
1a40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1a60 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....|..........................
1a80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1aa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 33 2e 31 2e 33 20 20 32 20 .....................|.3.1.3..2.
1ac0 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 20 62 79 74 65 73 3a 20 22 80 bf 22 20 20 20 20 20 20 20 20 continuation.bytes:.".."........
1ae0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1b00 20 20 20 20 20 7c 0a 33 2e 31 2e 34 20 20 33 20 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 20 62 79 74 .....|.3.1.4..3.continuation.byt
1b20 65 73 3a 20 22 80 bf 80 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 es:."...".......................
1b40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 33 2e 31 2e 35 20 20 34 20 .....................|.3.1.5..4.
1b60 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 20 62 79 74 65 73 3a 20 22 80 bf 80 bf 22 20 20 20 20 20 20 continuation.bytes:."...."......
1b80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1ba0 20 20 20 20 20 7c 0a 33 2e 31 2e 36 20 20 35 20 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 20 62 79 74 .....|.3.1.6..5.continuation.byt
1bc0 65 73 3a 20 22 80 bf 80 bf 80 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 es:.".....".....................
1be0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 33 2e 31 2e 37 20 20 36 20 .....................|.3.1.7..6.
1c00 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 20 62 79 74 65 73 3a 20 22 80 bf 80 bf 80 bf 22 20 20 20 20 continuation.bytes:."......"....
1c20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1c40 20 20 20 20 20 7c 0a 33 2e 31 2e 38 20 20 37 20 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 20 62 79 74 .....|.3.1.8..7.continuation.byt
1c60 65 73 3a 20 22 80 bf 80 bf 80 bf 80 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 es:."......."...................
1c80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 .....................|..........
1ca0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1cc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1ce0 20 20 20 20 20 7c 0a 33 2e 31 2e 39 20 20 53 65 71 75 65 6e 63 65 20 6f 66 20 61 6c 6c 20 36 34 .....|.3.1.9..Sequence.of.all.64
1d00 20 70 6f 73 73 69 62 6c 65 20 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 20 62 79 74 65 73 20 28 30 78 .possible.continuation.bytes.(0x
1d20 38 30 2d 30 78 62 66 29 3a 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 80-0xbf):............|..........
1d40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1d60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1d80 20 20 20 20 20 7c 0a 20 20 20 22 80 81 82 83 84 85 86 87 88 89 8a 8b 8c 8d 8e 8f 20 20 20 20 20 .....|....".....................
1da0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1dc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 90 91 92 93 94 .....................|..........
1de0 95 96 97 98 99 9a 9b 9c 9d 9e 9f 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1e00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1e20 20 20 20 20 20 7c 0a 20 20 20 20 a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af 20 20 20 20 20 .....|..........................
1e40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1e60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 b0 b1 b2 b3 b4 .....................|..........
1e80 b5 b6 b7 b8 b9 ba bb bc bd be bf 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..........."....................
1ea0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1ec0 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....|..........................
1ee0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1f00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 33 2e 32 20 20 4c 6f 6e 65 .....................|.3.2..Lone
1f20 6c 79 20 73 74 61 72 74 20 63 68 61 72 61 63 74 65 72 73 20 20 20 20 20 20 20 20 20 20 20 20 20 ly.start.characters.............
1f40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1f60 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....|..........................
1f80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1fa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 33 2e 32 2e 31 20 20 41 6c .....................|.3.2.1..Al
1fc0 6c 20 33 32 20 66 69 72 73 74 20 62 79 74 65 73 20 6f 66 20 32 2d 62 79 74 65 20 73 65 71 75 65 l.32.first.bytes.of.2-byte.seque
1fe0 6e 63 65 73 20 28 30 78 63 30 2d 30 78 64 66 29 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nces.(0xc0-0xdf),...............
2000 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 65 61 63 68 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 61 .....|........each.followed.by.a
2020 20 73 70 61 63 65 20 63 68 61 72 61 63 74 65 72 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .space.character:...............
2040 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 .....................|..........
2060 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
2080 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
20a0 20 20 20 20 20 7c 0a 20 20 20 22 c0 20 c1 20 c2 20 c3 20 c4 20 c5 20 c6 20 c7 20 c8 20 c9 20 ca .....|....".....................
20c0 20 cb 20 cc 20 cd 20 ce 20 cf 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
20e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 d0 20 d1 20 d2 .....................|..........
2100 20 d3 20 d4 20 d5 20 d6 20 d7 20 d8 20 d9 20 da 20 db 20 dc 20 dd 20 de 20 df 20 22 20 20 20 20 ..........................."....
2120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
2140 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....|..........................
2160 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
2180 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 33 2e 32 2e 32 20 20 41 6c .....................|.3.2.2..Al
21a0 6c 20 31 36 20 66 69 72 73 74 20 62 79 74 65 73 20 6f 66 20 33 2d 62 79 74 65 20 73 65 71 75 65 l.16.first.bytes.of.3-byte.seque
21c0 6e 63 65 73 20 28 30 78 65 30 2d 30 78 65 66 29 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nces.(0xe0-0xef),...............
21e0 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 65 61 63 68 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 61 .....|........each.followed.by.a
2200 20 73 70 61 63 65 20 63 68 61 72 61 63 74 65 72 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .space.character:...............
2220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 .....................|..........
2240 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
2260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
2280 20 20 20 20 20 7c 0a 20 20 20 22 e0 20 e1 20 e2 20 e3 20 e4 20 e5 20 e6 20 e7 20 e8 20 e9 20 ea .....|....".....................
22a0 20 eb 20 ec 20 ed 20 ee 20 ef 20 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..........."....................
22c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 .....................|..........
22e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
2300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
2320 20 20 20 20 20 7c 0a 33 2e 32 2e 33 20 20 41 6c 6c 20 38 20 66 69 72 73 74 20 62 79 74 65 73 20 .....|.3.2.3..All.8.first.bytes.
2340 6f 66 20 34 2d 62 79 74 65 20 73 65 71 75 65 6e 63 65 73 20 28 30 78 66 30 2d 30 78 66 37 29 2c of.4-byte.sequences.(0xf0-0xf7),
2360 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 65 61 .....................|........ea
2380 63 68 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 61 20 73 70 61 63 65 20 63 68 61 72 61 63 74 65 72 ch.followed.by.a.space.character
23a0 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 :...............................
23c0 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....|..........................
23e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
2400 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 22 f0 20 f1 20 f2 .....................|....".....
2420 20 f3 20 f4 20 f5 20 f6 20 f7 20 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..........."....................
2440 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
2460 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....|..........................
2480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
24a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 33 2e 32 2e 34 20 20 41 6c .....................|.3.2.4..Al
24c0 6c 20 34 20 66 69 72 73 74 20 62 79 74 65 73 20 6f 66 20 35 2d 62 79 74 65 20 73 65 71 75 65 6e l.4.first.bytes.of.5-byte.sequen
24e0 63 65 73 20 28 30 78 66 38 2d 30 78 66 62 29 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ces.(0xf8-0xfb),................
2500 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 65 61 63 68 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 61 .....|........each.followed.by.a
2520 20 73 70 61 63 65 20 63 68 61 72 61 63 74 65 72 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .space.character:...............
2540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 .....................|..........
2560 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
2580 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
25a0 20 20 20 20 20 7c 0a 20 20 20 22 f8 20 f9 20 fa 20 fb 20 22 20 20 20 20 20 20 20 20 20 20 20 20 .....|...."........"............
25c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
25e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 .....................|..........
2600 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
2620 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
2640 20 20 20 20 20 7c 0a 33 2e 32 2e 35 20 20 41 6c 6c 20 32 20 66 69 72 73 74 20 62 79 74 65 73 20 .....|.3.2.5..All.2.first.bytes.
2660 6f 66 20 36 2d 62 79 74 65 20 73 65 71 75 65 6e 63 65 73 20 28 30 78 66 63 2d 30 78 66 64 29 2c of.6-byte.sequences.(0xfc-0xfd),
2680 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 65 61 .....................|........ea
26a0 63 68 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 61 20 73 70 61 63 65 20 63 68 61 72 61 63 74 65 72 ch.followed.by.a.space.character
26c0 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 :...............................
26e0 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....|..........................
2700 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
2720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 22 fc 20 fd 20 22 .....................|...."...."
2740 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
2760 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
2780 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....|..........................
27a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
27c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 33 2e 33 20 20 53 65 71 75 .....................|.3.3..Sequ
27e0 65 6e 63 65 73 20 77 69 74 68 20 6c 61 73 74 20 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 20 62 79 74 ences.with.last.continuation.byt
2800 65 20 6d 69 73 73 69 6e 67 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e.missing.......................
2820 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....|..........................
2840 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
2860 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 41 6c 6c 20 62 79 74 65 73 .....................|.All.bytes
2880 20 6f 66 20 61 6e 20 69 6e 63 6f 6d 70 6c 65 74 65 20 73 65 71 75 65 6e 63 65 20 73 68 6f 75 6c .of.an.incomplete.sequence.shoul
28a0 64 20 62 65 20 73 69 67 6e 61 6c 6c 65 64 20 61 73 20 61 20 73 69 6e 67 6c 65 20 20 20 20 20 20 d.be.signalled.as.a.single......
28c0 20 20 20 20 20 7c 0a 6d 61 6c 66 6f 72 6d 65 64 20 73 65 71 75 65 6e 63 65 2c 20 69 2e 65 2e 2c .....|.malformed.sequence,.i.e.,
28e0 20 79 6f 75 20 73 68 6f 75 6c 64 20 73 65 65 20 6f 6e 6c 79 20 61 20 73 69 6e 67 6c 65 20 72 65 .you.should.see.only.a.single.re
2900 70 6c 61 63 65 6d 65 6e 74 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 63 68 61 72 61 63 74 65 72 placement............|.character
2920 20 69 6e 20 65 61 63 68 20 6f 66 20 74 68 65 20 6e 65 78 74 20 31 30 20 74 65 73 74 73 2e 20 28 .in.each.of.the.next.10.tests..(
2940 43 68 61 72 61 63 74 65 72 73 20 61 73 20 69 6e 20 73 65 63 74 69 6f 6e 20 32 29 20 20 20 20 20 Characters.as.in.section.2).....
2960 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....|..........................
2980 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
29a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 33 2e 33 2e 31 20 20 32 2d .....................|.3.3.1..2-
29c0 62 79 74 65 20 73 65 71 75 65 6e 63 65 20 77 69 74 68 20 6c 61 73 74 20 62 79 74 65 20 6d 69 73 byte.sequence.with.last.byte.mis
29e0 73 69 6e 67 20 28 55 2b 30 30 30 30 29 3a 20 20 20 20 20 22 c0 22 20 20 20 20 20 20 20 20 20 20 sing.(U+0000):....."."..........
2a00 20 20 20 20 20 7c 0a 33 2e 33 2e 32 20 20 33 2d 62 79 74 65 20 73 65 71 75 65 6e 63 65 20 77 69 .....|.3.3.2..3-byte.sequence.wi
2a20 74 68 20 6c 61 73 74 20 62 79 74 65 20 6d 69 73 73 69 6e 67 20 28 55 2b 30 30 30 30 29 3a 20 20 th.last.byte.missing.(U+0000):..
2a40 20 20 20 22 e0 80 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 33 2e 33 2e 33 20 20 34 ...".."...............|.3.3.3..4
2a60 2d 62 79 74 65 20 73 65 71 75 65 6e 63 65 20 77 69 74 68 20 6c 61 73 74 20 62 79 74 65 20 6d 69 -byte.sequence.with.last.byte.mi
2a80 73 73 69 6e 67 20 28 55 2b 30 30 30 30 29 3a 20 20 20 20 20 22 f0 80 80 22 20 20 20 20 20 20 20 ssing.(U+0000):....."...".......
2aa0 20 20 20 20 20 20 20 20 7c 0a 33 2e 33 2e 34 20 20 35 2d 62 79 74 65 20 73 65 71 75 65 6e 63 65 ........|.3.3.4..5-byte.sequence
2ac0 20 77 69 74 68 20 6c 61 73 74 20 62 79 74 65 20 6d 69 73 73 69 6e 67 20 28 55 2b 30 30 30 30 29 .with.last.byte.missing.(U+0000)
2ae0 3a 20 20 20 20 20 22 f8 80 80 80 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 33 2e 33 :....."...."...............|.3.3
2b00 2e 35 20 20 36 2d 62 79 74 65 20 73 65 71 75 65 6e 63 65 20 77 69 74 68 20 6c 61 73 74 20 62 79 .5..6-byte.sequence.with.last.by
2b20 74 65 20 6d 69 73 73 69 6e 67 20 28 55 2b 30 30 30 30 29 3a 20 20 20 20 20 22 fc 80 80 80 80 22 te.missing.(U+0000):....."....."
2b40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 33 2e 33 2e 36 20 20 32 2d 62 79 74 65 20 73 ...............|.3.3.6..2-byte.s
2b60 65 71 75 65 6e 63 65 20 77 69 74 68 20 6c 61 73 74 20 62 79 74 65 20 6d 69 73 73 69 6e 67 20 28 equence.with.last.byte.missing.(
2b80 55 2d 30 30 30 30 30 37 46 46 29 3a 20 22 df 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c U-000007FF):."."...............|
2ba0 0a 33 2e 33 2e 37 20 20 33 2d 62 79 74 65 20 73 65 71 75 65 6e 63 65 20 77 69 74 68 20 6c 61 73 .3.3.7..3-byte.sequence.with.las
2bc0 74 20 62 79 74 65 20 6d 69 73 73 69 6e 67 20 28 55 2d 30 30 30 30 46 46 46 46 29 3a 20 22 ef bf t.byte.missing.(U-0000FFFF):."..
2be0 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 33 2e 33 2e 38 20 20 34 2d 62 79 74 65 20 "...............|.3.3.8..4-byte.
2c00 73 65 71 75 65 6e 63 65 20 77 69 74 68 20 6c 61 73 74 20 62 79 74 65 20 6d 69 73 73 69 6e 67 20 sequence.with.last.byte.missing.
2c20 28 55 2d 30 30 31 46 46 46 46 46 29 3a 20 22 f7 bf bf 22 20 20 20 20 20 20 20 20 20 20 20 20 20 (U-001FFFFF):."...".............
2c40 20 20 7c 0a 33 2e 33 2e 39 20 20 35 2d 62 79 74 65 20 73 65 71 75 65 6e 63 65 20 77 69 74 68 20 ..|.3.3.9..5-byte.sequence.with.
2c60 6c 61 73 74 20 62 79 74 65 20 6d 69 73 73 69 6e 67 20 28 55 2d 30 33 46 46 46 46 46 46 29 3a 20 last.byte.missing.(U-03FFFFFF):.
2c80 22 fb bf bf bf 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 33 2e 33 2e 31 30 20 36 2d "...."...............|.3.3.10.6-
2ca0 62 79 74 65 20 73 65 71 75 65 6e 63 65 20 77 69 74 68 20 6c 61 73 74 20 62 79 74 65 20 6d 69 73 byte.sequence.with.last.byte.mis
2cc0 73 69 6e 67 20 28 55 2d 37 46 46 46 46 46 46 46 29 3a 20 22 fd bf bf bf bf 22 20 20 20 20 20 20 sing.(U-7FFFFFFF):."....."......
2ce0 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .........|......................
2d00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
2d20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 33 2e 34 20 20 .........................|.3.4..
2d40 43 6f 6e 63 61 74 65 6e 61 74 69 6f 6e 20 6f 66 20 69 6e 63 6f 6d 70 6c 65 74 65 20 73 65 71 75 Concatenation.of.incomplete.sequ
2d60 65 6e 63 65 73 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ences...........................
2d80 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .........|......................
2da0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
2dc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 41 6c 6c 20 74 .........................|.All.t
2de0 68 65 20 31 30 20 73 65 71 75 65 6e 63 65 73 20 6f 66 20 33 2e 33 20 63 6f 6e 63 61 74 65 6e 61 he.10.sequences.of.3.3.concatena
2e00 74 65 64 2c 20 79 6f 75 20 73 68 6f 75 6c 64 20 73 65 65 20 31 30 20 6d 61 6c 66 6f 72 6d 65 64 ted,.you.should.see.10.malformed
2e20 20 20 20 20 20 20 20 20 20 7c 0a 73 65 71 75 65 6e 63 65 73 20 62 65 69 6e 67 20 73 69 67 6e 61 .........|.sequences.being.signa
2e40 6c 6c 65 64 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 lled:...........................
2e60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 .........................|......
2e80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
2ea0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
2ec0 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 22 c0 e0 80 f0 80 80 f8 80 80 80 fc 80 80 80 80 df ef .........|....".................
2ee0 bf f7 bf bf fb bf bf bf fd bf bf bf bf 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ............."..................
2f00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
2f20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .............|..................
2f40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
2f60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 33 .............................|.3
2f80 2e 35 20 20 49 6d 70 6f 73 73 69 62 6c 65 20 62 79 74 65 73 20 20 20 20 20 20 20 20 20 20 20 20 .5..Impossible.bytes............
2fa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
2fc0 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .............|..................
2fe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
3000 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 54 .............................|.T
3020 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 77 6f 20 62 79 74 65 73 20 63 61 6e 6e 6f 74 20 61 70 he.following.two.bytes.cannot.ap
3040 70 65 61 72 20 69 6e 20 61 20 63 6f 72 72 65 63 74 20 55 54 46 2d 38 20 73 74 72 69 6e 67 20 20 pear.in.a.correct.UTF-8.string..
3060 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .............|..................
3080 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
30a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 33 .............................|.3
30c0 2e 35 2e 31 20 20 66 65 20 3d 20 22 fe 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .5.1..fe.=."."..................
30e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
3100 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 33 2e 35 2e 32 20 20 66 66 20 3d 20 22 ff 22 20 20 .............|.3.5.2..ff.=."."..
3120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
3140 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 33 .............................|.3
3160 2e 35 2e 33 20 20 66 65 20 66 65 20 66 66 20 66 66 20 3d 20 22 fe fe ff ff 22 20 20 20 20 20 20 .5.3..fe.fe.ff.ff.=."...."......
3180 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
31a0 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .............|..................
31c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
31e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 34 .............................|.4
3200 20 20 4f 76 65 72 6c 6f 6e 67 20 73 65 71 75 65 6e 63 65 73 20 20 20 20 20 20 20 20 20 20 20 20 ..Overlong.sequences............
3220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
3240 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .............|..................
3260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
3280 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 54 .............................|.T
32a0 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 73 65 71 75 65 6e 63 65 73 20 61 72 65 20 6e 6f 74 20 6d he.following.sequences.are.not.m
32c0 61 6c 66 6f 72 6d 65 64 20 61 63 63 6f 72 64 69 6e 67 20 74 6f 20 74 68 65 20 6c 65 74 74 65 72 alformed.according.to.the.letter
32e0 20 6f 66 20 20 20 20 20 20 20 20 20 20 7c 0a 74 68 65 20 55 6e 69 63 6f 64 65 20 32 2e 30 20 73 .of..........|.the.Unicode.2.0.s
3300 74 61 6e 64 61 72 64 2e 20 48 6f 77 65 76 65 72 2c 20 74 68 65 79 20 61 72 65 20 6c 6f 6e 67 65 tandard..However,.they.are.longe
3320 72 20 74 68 65 6e 20 6e 65 63 65 73 73 61 72 79 20 61 6e 64 20 20 20 20 20 20 20 20 20 7c 0a 61 r.then.necessary.and.........|.a
3340 20 63 6f 72 72 65 63 74 20 55 54 46 2d 38 20 65 6e 63 6f 64 65 72 20 69 73 20 6e 6f 74 20 61 6c .correct.UTF-8.encoder.is.not.al
3360 6c 6f 77 65 64 20 74 6f 20 70 72 6f 64 75 63 65 20 74 68 65 6d 2e 20 41 20 22 73 61 66 65 20 55 lowed.to.produce.them..A."safe.U
3380 54 46 2d 38 20 20 20 20 20 20 20 20 20 7c 0a 64 65 63 6f 64 65 72 22 20 73 68 6f 75 6c 64 20 72 TF-8.........|.decoder".should.r
33a0 65 6a 65 63 74 20 74 68 65 6d 20 6a 75 73 74 20 6c 69 6b 65 20 6d 61 6c 66 6f 72 6d 65 64 20 73 eject.them.just.like.malformed.s
33c0 65 71 75 65 6e 63 65 73 20 66 6f 72 20 74 77 6f 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 72 equences.for.two.............|.r
33e0 65 61 73 6f 6e 73 3a 20 28 31 29 20 49 74 20 68 65 6c 70 73 20 74 6f 20 64 65 62 75 67 20 61 70 easons:.(1).It.helps.to.debug.ap
3400 70 6c 69 63 61 74 69 6f 6e 73 20 69 66 20 6f 76 65 72 6c 6f 6e 67 20 73 65 71 75 65 6e 63 65 73 plications.if.overlong.sequences
3420 20 61 72 65 20 20 20 20 20 20 20 20 20 7c 0a 6e 6f 74 20 74 72 65 61 74 65 64 20 61 73 20 76 61 .are.........|.not.treated.as.va
3440 6c 69 64 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 73 20 6f 66 20 63 68 61 72 61 63 74 65 72 lid.representations.of.character
3460 73 2c 20 62 65 63 61 75 73 65 20 74 68 69 73 20 68 65 6c 70 73 20 20 20 20 20 20 20 20 7c 0a 74 s,.because.this.helps........|.t
3480 6f 20 73 70 6f 74 20 70 72 6f 62 6c 65 6d 73 20 6d 6f 72 65 20 71 75 69 63 6b 6c 79 2e 20 28 32 o.spot.problems.more.quickly..(2
34a0 29 20 4f 76 65 72 6c 6f 6e 67 20 73 65 71 75 65 6e 63 65 73 20 70 72 6f 76 69 64 65 20 20 20 20 ).Overlong.sequences.provide....
34c0 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 61 6c 74 65 72 6e 61 74 69 76 65 20 72 65 70 72 65 .............|.alternative.repre
34e0 73 65 6e 74 61 74 69 6f 6e 73 20 6f 66 20 63 68 61 72 61 63 74 65 72 73 2c 20 74 68 61 74 20 63 sentations.of.characters,.that.c
3500 6f 75 6c 64 20 6d 61 6c 69 63 69 6f 75 73 6c 79 20 62 65 20 20 20 20 20 20 20 20 20 20 7c 0a 75 ould.maliciously.be..........|.u
3520 73 65 64 20 74 6f 20 62 79 70 61 73 73 20 66 69 6c 74 65 72 73 20 74 68 61 74 20 63 68 65 63 6b sed.to.bypass.filters.that.check
3540 20 6f 6e 6c 79 20 66 6f 72 20 41 53 43 49 49 20 63 68 61 72 61 63 74 65 72 73 2e 20 46 6f 72 20 .only.for.ASCII.characters..For.
3560 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 69 6e 73 74 61 6e 63 65 2c 20 61 20 32 2d 62 79 74 .............|.instance,.a.2-byt
3580 65 20 65 6e 63 6f 64 65 64 20 6c 69 6e 65 20 66 65 65 64 20 28 4c 46 29 20 77 6f 75 6c 64 20 6e e.encoded.line.feed.(LF).would.n
35a0 6f 74 20 62 65 20 63 61 75 67 68 74 20 62 79 20 61 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 6c ot.be.caught.by.a............|.l
35c0 69 6e 65 20 63 6f 75 6e 74 65 72 20 74 68 61 74 20 63 6f 75 6e 74 73 20 6f 6e 6c 79 20 30 78 30 ine.counter.that.counts.only.0x0
35e0 61 20 62 79 74 65 73 2c 20 62 75 74 20 69 74 20 77 6f 75 6c 64 20 73 74 69 6c 6c 20 62 65 20 20 a.bytes,.but.it.would.still.be..
3600 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 70 72 6f 63 65 73 73 65 64 20 61 73 20 61 20 6c 69 .............|.processed.as.a.li
3620 6e 65 20 66 65 65 64 20 62 79 20 61 6e 20 75 6e 73 61 66 65 20 55 54 46 2d 38 20 64 65 63 6f 64 ne.feed.by.an.unsafe.UTF-8.decod
3640 65 72 20 6c 61 74 65 72 20 69 6e 20 74 68 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 70 er.later.in.the..............|.p
3660 69 70 65 6c 69 6e 65 2e 20 46 72 6f 6d 20 61 20 73 65 63 75 72 69 74 79 20 70 6f 69 6e 74 20 6f ipeline..From.a.security.point.o
3680 66 20 76 69 65 77 2c 20 41 53 43 49 49 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 6f 66 20 55 f.view,.ASCII.compatibility.of.U
36a0 54 46 2d 38 20 20 20 20 20 20 20 20 20 7c 0a 73 65 71 75 65 6e 63 65 73 20 6d 65 61 6e 73 20 61 TF-8.........|.sequences.means.a
36c0 6c 73 6f 2c 20 74 68 61 74 20 41 53 43 49 49 20 63 68 61 72 61 63 74 65 72 73 20 61 72 65 20 2a lso,.that.ASCII.characters.are.*
36e0 6f 6e 6c 79 2a 20 61 6c 6c 6f 77 65 64 20 74 6f 20 62 65 20 20 20 20 20 20 20 20 20 20 7c 0a 72 only*.allowed.to.be..........|.r
3700 65 70 72 65 73 65 6e 74 65 64 20 62 79 20 41 53 43 49 49 20 62 79 74 65 73 20 69 6e 20 74 68 65 epresented.by.ASCII.bytes.in.the
3720 20 72 61 6e 67 65 20 30 78 30 30 2d 30 78 37 66 2e 20 54 6f 20 65 6e 73 75 72 65 20 74 68 69 73 .range.0x00-0x7f..To.ensure.this
3740 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 61 73 70 65 63 74 20 6f 66 20 41 53 43 49 49 20 63 .............|.aspect.of.ASCII.c
3760 6f 6d 70 61 74 69 62 69 6c 69 74 79 2c 20 75 73 65 20 6f 6e 6c 79 20 22 73 61 66 65 20 55 54 46 ompatibility,.use.only."safe.UTF
3780 2d 38 20 64 65 63 6f 64 65 72 73 22 20 74 68 61 74 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 72 -8.decoders".that............|.r
37a0 65 6a 65 63 74 20 6f 76 65 72 6c 6f 6e 67 20 55 54 46 2d 38 20 73 65 71 75 65 6e 63 65 73 20 66 eject.overlong.UTF-8.sequences.f
37c0 6f 72 20 77 68 69 63 68 20 61 20 73 68 6f 72 74 65 72 20 65 6e 63 6f 64 69 6e 67 20 65 78 69 73 or.which.a.shorter.encoding.exis
37e0 74 73 2e 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ts...........|..................
3800 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
3820 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 34 .............................|.4
3840 2e 31 20 20 45 78 61 6d 70 6c 65 73 20 6f 66 20 61 6e 20 6f 76 65 72 6c 6f 6e 67 20 41 53 43 49 .1..Examples.of.an.overlong.ASCI
3860 49 20 63 68 61 72 61 63 74 65 72 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 I.character.....................
3880 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .............|..................
38a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
38c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 57 .............................|.W
38e0 69 74 68 20 61 20 73 61 66 65 20 55 54 46 2d 38 20 64 65 63 6f 64 65 72 2c 20 61 6c 6c 20 6f 66 ith.a.safe.UTF-8.decoder,.all.of
3900 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 66 69 76 65 20 6f 76 65 72 6c 6f 6e 67 20 20 20 20 .the.following.five.overlong....
3920 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 73 20 6f .............|.representations.o
3940 66 20 74 68 65 20 41 53 43 49 49 20 63 68 61 72 61 63 74 65 72 20 73 6c 61 73 68 20 28 22 2f 22 f.the.ASCII.character.slash.("/"
3960 29 20 73 68 6f 75 6c 64 20 62 65 20 72 65 6a 65 63 74 65 64 20 20 20 20 20 20 20 20 20 7c 0a 6c ).should.be.rejected.........|.l
3980 69 6b 65 20 61 20 6d 61 6c 66 6f 72 6d 65 64 20 55 54 46 2d 38 20 73 65 71 75 65 6e 63 65 2c 20 ike.a.malformed.UTF-8.sequence,.
39a0 66 6f 72 20 69 6e 73 74 61 6e 63 65 20 62 79 20 73 75 62 73 74 69 74 75 74 69 6e 67 20 69 74 20 for.instance.by.substituting.it.
39c0 77 69 74 68 20 20 20 20 20 20 20 20 20 7c 0a 61 20 72 65 70 6c 61 63 65 6d 65 6e 74 20 63 68 61 with.........|.a.replacement.cha
39e0 72 61 63 74 65 72 2e 20 49 66 20 79 6f 75 20 73 65 65 20 61 20 73 6c 61 73 68 20 62 65 6c 6f 77 racter..If.you.see.a.slash.below
3a00 2c 20 79 6f 75 20 64 6f 20 6e 6f 74 20 68 61 76 65 20 61 20 20 20 20 20 20 20 20 20 20 7c 0a 73 ,.you.do.not.have.a..........|.s
3a20 61 66 65 20 55 54 46 2d 38 20 64 65 63 6f 64 65 72 21 20 20 20 20 20 20 20 20 20 20 20 20 20 20 afe.UTF-8.decoder!..............
3a40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
3a60 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .............|..................
3a80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
3aa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 34 .............................|.4
3ac0 2e 31 2e 31 20 55 2b 30 30 32 46 20 3d 20 63 30 20 61 66 20 20 20 20 20 20 20 20 20 20 20 20 20 .1.1.U+002F.=.c0.af.............
3ae0 3d 20 22 c0 af 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 =.".."..........................
3b00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 34 2e 31 2e 32 20 55 2b 30 30 32 46 20 3d 20 65 ..............|.4.1.2.U+002F.=.e
3b20 30 20 38 30 20 61 66 20 20 20 20 20 20 20 20 20 20 3d 20 22 e0 80 af 22 20 20 20 20 20 20 20 20 0.80.af..........=."..."........
3b40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
3b60 7c 0a 34 2e 31 2e 33 20 55 2b 30 30 32 46 20 3d 20 66 30 20 38 30 20 38 30 20 61 66 20 20 20 20 |.4.1.3.U+002F.=.f0.80.80.af....
3b80 20 20 20 3d 20 22 f0 80 80 af 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...=."....".....................
3ba0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 34 2e 31 2e 34 20 55 2b 30 30 32 ...................|.4.1.4.U+002
3bc0 46 20 3d 20 66 38 20 38 30 20 38 30 20 38 30 20 61 66 20 20 20 20 3d 20 22 f8 80 80 80 af 22 20 F.=.f8.80.80.80.af....=.".....".
3be0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
3c00 20 20 20 20 20 20 20 7c 0a 34 2e 31 2e 35 20 55 2b 30 30 32 46 20 3d 20 66 63 20 38 30 20 38 30 .......|.4.1.5.U+002F.=.fc.80.80
3c20 20 38 30 20 38 30 20 61 66 20 3d 20 22 fc 80 80 80 80 af 22 20 20 20 20 20 20 20 20 20 20 20 20 .80.80.af.=."......"............
3c40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 ............................|...
3c60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
3c80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
3ca0 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 34 2e 32 20 20 4d 61 78 69 6d 75 6d 20 6f 76 65 72 6c ............|.4.2..Maximum.overl
3cc0 6f 6e 67 20 73 65 71 75 65 6e 63 65 73 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ong.sequences...................
3ce0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 ............................|...
3d00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
3d20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
3d40 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 42 65 6c 6f 77 20 79 6f 75 20 73 65 65 20 74 68 65 20 ............|.Below.you.see.the.
3d60 68 69 67 68 65 73 74 20 55 6e 69 63 6f 64 65 20 76 61 6c 75 65 20 74 68 61 74 20 69 73 20 73 74 highest.Unicode.value.that.is.st
3d80 69 6c 6c 20 72 65 73 75 6c 74 69 6e 67 20 69 6e 20 61 6e 20 20 20 20 20 20 20 20 20 7c 0a 6f 76 ill.resulting.in.an.........|.ov
3da0 65 72 6c 6f 6e 67 20 73 65 71 75 65 6e 63 65 20 69 66 20 72 65 70 72 65 73 65 6e 74 65 64 20 77 erlong.sequence.if.represented.w
3dc0 69 74 68 20 74 68 65 20 67 69 76 65 6e 20 6e 75 6d 62 65 72 20 6f 66 20 62 79 74 65 73 2e 20 54 ith.the.given.number.of.bytes..T
3de0 68 69 73 20 20 20 20 20 20 20 20 20 7c 0a 69 73 20 61 20 62 6f 75 6e 64 61 72 79 20 74 65 73 74 his.........|.is.a.boundary.test
3e00 20 66 6f 72 20 73 61 66 65 20 55 54 46 2d 38 20 64 65 63 6f 64 65 72 73 2e 20 41 6c 6c 20 66 69 .for.safe.UTF-8.decoders..All.fi
3e20 76 65 20 63 68 61 72 61 63 74 65 72 73 20 73 68 6f 75 6c 64 20 20 20 20 20 20 20 20 7c 0a 62 65 ve.characters.should........|.be
3e40 20 72 65 6a 65 63 74 65 64 20 6c 69 6b 65 20 6d 61 6c 66 6f 72 6d 65 64 20 55 54 46 2d 38 20 73 .rejected.like.malformed.UTF-8.s
3e60 65 71 75 65 6e 63 65 73 2e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 equences........................
3e80 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ............|...................
3ea0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
3ec0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 34 2e ............................|.4.
3ee0 32 2e 31 20 20 55 2d 30 30 30 30 30 30 37 46 20 3d 20 63 31 20 62 66 20 20 20 20 20 20 20 20 20 2.1..U-0000007F.=.c1.bf.........
3f00 20 20 20 20 3d 20 22 c1 bf 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ....=.".."......................
3f20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 34 2e 32 2e 32 20 20 55 2d 30 30 30 30 30 37 46 46 .............|.4.2.2..U-000007FF
3f40 20 3d 20 65 30 20 39 66 20 62 66 20 20 20 20 20 20 20 20 20 20 3d 20 22 e0 9f bf 22 20 20 20 20 .=.e0.9f.bf..........=."..."....
3f60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c ...............................|
3f80 0a 34 2e 32 2e 33 20 20 55 2d 30 30 30 30 46 46 46 46 20 3d 20 66 30 20 38 66 20 62 66 20 62 66 .4.2.3..U-0000FFFF.=.f0.8f.bf.bf
3fa0 20 20 20 20 20 20 20 3d 20 22 f0 8f bf bf 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .......=."....".................
3fc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 34 2e 32 2e 34 20 20 55 2d 30 30 31 ..................|.4.2.4..U-001
3fe0 46 46 46 46 46 20 3d 20 66 38 20 38 37 20 62 66 20 62 66 20 62 66 20 20 20 20 3d 20 22 f8 87 bf FFFFF.=.f8.87.bf.bf.bf....=."...
4000 bf bf 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..".............................
4020 20 20 20 20 20 20 7c 0a 34 2e 32 2e 35 20 20 55 2d 30 33 46 46 46 46 46 46 20 3d 20 66 63 20 38 ......|.4.2.5..U-03FFFFFF.=.fc.8
4040 33 20 62 66 20 62 66 20 62 66 20 62 66 20 3d 20 22 fc 83 bf bf bf bf 22 20 20 20 20 20 20 20 20 3.bf.bf.bf.bf.=."......"........
4060 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 ...........................|....
4080 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
40a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
40c0 20 20 20 20 20 20 20 20 20 20 20 7c 0a 34 2e 33 20 20 4f 76 65 72 6c 6f 6e 67 20 72 65 70 72 65 ...........|.4.3..Overlong.repre
40e0 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 4e 55 4c 20 63 68 61 72 61 63 74 65 72 20 20 sentation.of.the.NUL.character..
4100 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 ...........................|....
4120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
4140 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
4160 20 20 20 20 20 20 20 20 20 20 20 7c 0a 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 66 69 76 65 20 ...........|.The.following.five.
4180 73 65 71 75 65 6e 63 65 73 20 73 68 6f 75 6c 64 20 61 6c 73 6f 20 62 65 20 72 65 6a 65 63 74 65 sequences.should.also.be.rejecte
41a0 64 20 6c 69 6b 65 20 6d 61 6c 66 6f 72 6d 65 64 20 20 20 20 20 20 20 20 20 20 20 7c 0a 55 54 46 d.like.malformed...........|.UTF
41c0 2d 38 20 73 65 71 75 65 6e 63 65 73 20 61 6e 64 20 73 68 6f 75 6c 64 20 6e 6f 74 20 62 65 20 74 -8.sequences.and.should.not.be.t
41e0 72 65 61 74 65 64 20 6c 69 6b 65 20 74 68 65 20 41 53 43 49 49 20 4e 55 4c 20 20 20 20 20 20 20 reated.like.the.ASCII.NUL.......
4200 20 20 20 20 20 20 20 20 20 20 20 7c 0a 63 68 61 72 61 63 74 65 72 2e 20 20 20 20 20 20 20 20 20 ...........|.character..........
4220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
4240 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 ...........................|....
4260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
4280 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
42a0 20 20 20 20 20 20 20 20 20 20 20 7c 0a 34 2e 33 2e 31 20 20 55 2b 30 30 30 30 20 3d 20 63 30 20 ...........|.4.3.1..U+0000.=.c0.
42c0 38 30 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 22 c0 80 22 20 20 20 20 20 20 20 20 20 20 20 80.............=.".."...........
42e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 34 2e ............................|.4.
4300 33 2e 32 20 20 55 2b 30 30 30 30 20 3d 20 65 30 20 38 30 20 38 30 20 20 20 20 20 20 20 20 20 20 3.2..U+0000.=.e0.80.80..........
4320 3d 20 22 e0 80 80 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 =."...".........................
4340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 34 2e 33 2e 33 20 20 55 2b 30 30 30 30 20 3d 20 ..............|.4.3.3..U+0000.=.
4360 66 30 20 38 30 20 38 30 20 38 30 20 20 20 20 20 20 20 3d 20 22 f0 80 80 80 22 20 20 20 20 20 20 f0.80.80.80.......=."...."......
4380 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
43a0 20 7c 0a 34 2e 33 2e 34 20 20 55 2b 30 30 30 30 20 3d 20 66 38 20 38 30 20 38 30 20 38 30 20 38 .|.4.3.4..U+0000.=.f8.80.80.80.8
43c0 30 20 20 20 20 3d 20 22 f8 80 80 80 80 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0....=."....."..................
43e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 34 2e 33 2e 35 20 20 55 2b .....................|.4.3.5..U+
4400 30 30 30 30 20 3d 20 66 63 20 38 30 20 38 30 20 38 30 20 38 30 20 38 30 20 3d 20 22 fc 80 80 80 0000.=.fc.80.80.80.80.80.=."....
4420 80 80 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..".............................
4440 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..........|.....................
4460 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
4480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 35 20 20 49 ..........................|.5..I
44a0 6c 6c 65 67 61 6c 20 63 6f 64 65 20 70 6f 73 69 74 69 6f 6e 73 20 20 20 20 20 20 20 20 20 20 20 llegal.code.positions...........
44c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
44e0 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..........|.....................
4500 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
4520 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 54 68 65 20 ..........................|.The.
4540 66 6f 6c 6c 6f 77 69 6e 67 20 55 54 46 2d 38 20 73 65 71 75 65 6e 63 65 73 20 73 68 6f 75 6c 64 following.UTF-8.sequences.should
4560 20 62 65 20 72 65 6a 65 63 74 65 64 20 6c 69 6b 65 20 6d 61 6c 66 6f 72 6d 65 64 20 20 20 20 20 .be.rejected.like.malformed.....
4580 20 20 20 20 20 20 20 20 20 20 7c 0a 73 65 71 75 65 6e 63 65 73 2c 20 62 65 63 61 75 73 65 20 74 ..........|.sequences,.because.t
45a0 68 65 79 20 6e 65 76 65 72 20 72 65 70 72 65 73 65 6e 74 20 76 61 6c 69 64 20 49 53 4f 20 31 30 hey.never.represent.valid.ISO.10
45c0 36 34 36 20 63 68 61 72 61 63 74 65 72 73 20 61 6e 64 20 20 20 20 20 20 20 20 7c 0a 61 20 55 54 646.characters.and........|.a.UT
45e0 46 2d 38 20 64 65 63 6f 64 65 72 20 74 68 61 74 20 61 63 63 65 70 74 73 20 74 68 65 6d 20 6d 69 F-8.decoder.that.accepts.them.mi
4600 67 68 74 20 69 6e 74 72 6f 64 75 63 65 20 73 65 63 75 72 69 74 79 20 70 72 6f 62 6c 65 6d 73 20 ght.introduce.security.problems.
4620 20 20 20 20 20 20 20 20 20 20 7c 0a 63 6f 6d 70 61 72 61 62 6c 65 20 74 6f 20 6f 76 65 72 6c 6f ..........|.comparable.to.overlo
4640 6e 67 20 55 54 46 2d 38 20 73 65 71 75 65 6e 63 65 73 2e 20 20 20 20 20 20 20 20 20 20 20 20 20 ng.UTF-8.sequences..............
4660 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 ..........................|.....
4680 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
46a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
46c0 20 20 20 20 20 20 20 20 20 20 7c 0a 35 2e 31 20 53 69 6e 67 6c 65 20 55 54 46 2d 31 36 20 73 75 ..........|.5.1.Single.UTF-16.su
46e0 72 72 6f 67 61 74 65 73 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rrogates........................
4700 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 ..........................|.....
4720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
4740 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
4760 20 20 20 20 20 20 20 20 20 20 7c 0a 35 2e 31 2e 31 20 20 55 2b 44 38 30 30 20 3d 20 65 64 20 61 ..........|.5.1.1..U+D800.=.ed.a
4780 30 20 38 30 20 3d 20 22 ed a0 80 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0.80.=."..."....................
47a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 35 2e ............................|.5.
47c0 31 2e 32 20 20 55 2b 44 42 37 46 20 3d 20 65 64 20 61 64 20 62 66 20 3d 20 22 ed ad bf 22 20 20 1.2..U+DB7F.=.ed.ad.bf.=."..."..
47e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
4800 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 35 2e 31 2e 33 20 20 55 2b 44 42 38 30 20 3d 20 ..............|.5.1.3..U+DB80.=.
4820 65 64 20 61 65 20 38 30 20 3d 20 22 ed ae 80 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ed.ae.80.=."..."................
4840 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
4860 7c 0a 35 2e 31 2e 34 20 20 55 2b 44 42 46 46 20 3d 20 65 64 20 61 66 20 62 66 20 3d 20 22 ed af |.5.1.4..U+DBFF.=.ed.af.bf.=."..
4880 bf 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ."..............................
48a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 35 2e 31 2e 35 20 20 55 2b 44 43 30 ..................|.5.1.5..U+DC0
48c0 30 20 3d 20 65 64 20 62 30 20 38 30 20 3d 20 22 ed b0 80 22 20 20 20 20 20 20 20 20 20 20 20 20 0.=.ed.b0.80.=."..."............
48e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
4900 20 20 20 20 7c 0a 35 2e 31 2e 36 20 20 55 2b 44 46 38 30 20 3d 20 65 64 20 62 65 20 38 30 20 3d ....|.5.1.6..U+DF80.=.ed.be.80.=
4920 20 22 ed be 80 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ."..."..........................
4940 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 35 2e 31 2e 37 20 20 55 ......................|.5.1.7..U
4960 2b 44 46 46 46 20 3d 20 65 64 20 62 66 20 62 66 20 3d 20 22 ed bf bf 22 20 20 20 20 20 20 20 20 +DFFF.=.ed.bf.bf.=."..."........
4980 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
49a0 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ........|.......................
49c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
49e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 35 2e 32 20 50 61 ........................|.5.2.Pa
4a00 69 72 65 64 20 55 54 46 2d 31 36 20 73 75 72 72 6f 67 61 74 65 73 20 20 20 20 20 20 20 20 20 20 ired.UTF-16.surrogates..........
4a20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
4a40 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ........|.......................
4a60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
4a80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 35 2e 32 2e 31 20 ........................|.5.2.1.
4aa0 20 55 2b 44 38 30 30 20 55 2b 44 43 30 30 20 3d 20 65 64 20 61 30 20 38 30 20 65 64 20 62 30 20 .U+D800.U+DC00.=.ed.a0.80.ed.b0.
4ac0 38 30 20 3d 20 22 ed a0 80 ed b0 80 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 80.=."......"...................
4ae0 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 35 2e 32 2e 32 20 20 55 2b 44 38 30 30 20 55 2b 44 46 ............|.5.2.2..U+D800.U+DF
4b00 46 46 20 3d 20 65 64 20 61 30 20 38 30 20 65 64 20 62 66 20 62 66 20 3d 20 22 ed a0 80 ed bf bf FF.=.ed.a0.80.ed.bf.bf.=."......
4b20 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 "...............................
4b40 7c 0a 35 2e 32 2e 33 20 20 55 2b 44 42 37 46 20 55 2b 44 43 30 30 20 3d 20 65 64 20 61 64 20 62 |.5.2.3..U+DB7F.U+DC00.=.ed.ad.b
4b60 66 20 65 64 20 62 30 20 38 30 20 3d 20 22 ed ad bf ed b0 80 22 20 20 20 20 20 20 20 20 20 20 20 f.ed.b0.80.=."......"...........
4b80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 35 2e 32 2e 34 20 20 55 2b 44 ....................|.5.2.4..U+D
4ba0 42 37 46 20 55 2b 44 46 46 46 20 3d 20 65 64 20 61 64 20 62 66 20 65 64 20 62 66 20 62 66 20 3d B7F.U+DFFF.=.ed.ad.bf.ed.bf.bf.=
4bc0 20 22 ed ad bf ed bf bf 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ."......".......................
4be0 20 20 20 20 20 20 20 20 7c 0a 35 2e 32 2e 35 20 20 55 2b 44 42 38 30 20 55 2b 44 43 30 30 20 3d ........|.5.2.5..U+DB80.U+DC00.=
4c00 20 65 64 20 61 65 20 38 30 20 65 64 20 62 30 20 38 30 20 3d 20 22 ed ae 80 ed b0 80 22 20 20 20 .ed.ae.80.ed.b0.80.=."......"...
4c20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 35 2e ............................|.5.
4c40 32 2e 36 20 20 55 2b 44 42 38 30 20 55 2b 44 46 46 46 20 3d 20 65 64 20 61 65 20 38 30 20 65 64 2.6..U+DB80.U+DFFF.=.ed.ae.80.ed
4c60 20 62 66 20 62 66 20 3d 20 22 ed ae 80 ed bf bf 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .bf.bf.=."......"...............
4c80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 35 2e 32 2e 37 20 20 55 2b 44 42 46 46 20 ................|.5.2.7..U+DBFF.
4ca0 55 2b 44 43 30 30 20 3d 20 65 64 20 61 66 20 62 66 20 65 64 20 62 30 20 38 30 20 3d 20 22 ed af U+DC00.=.ed.af.bf.ed.b0.80.=."..
4cc0 bf ed b0 80 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...."...........................
4ce0 20 20 20 20 7c 0a 35 2e 32 2e 38 20 20 55 2b 44 42 46 46 20 55 2b 44 46 46 46 20 3d 20 65 64 20 ....|.5.2.8..U+DBFF.U+DFFF.=.ed.
4d00 61 66 20 62 66 20 65 64 20 62 66 20 62 66 20 3d 20 22 ed af bf ed bf bf 22 20 20 20 20 20 20 20 af.bf.ed.bf.bf.=."......".......
4d20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 ........................|.......
4d40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
4d60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
4d80 20 20 20 20 20 20 20 20 7c 0a 35 2e 33 20 4f 74 68 65 72 20 69 6c 6c 65 67 61 6c 20 63 6f 64 65 ........|.5.3.Other.illegal.code
4da0 20 70 6f 73 69 74 69 6f 6e 73 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .positions......................
4dc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 ........................|.......
4de0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
4e00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
4e20 20 20 20 20 20 20 20 20 7c 0a 35 2e 33 2e 31 20 20 55 2b 46 46 46 45 20 3d 20 65 66 20 62 66 20 ........|.5.3.1..U+FFFE.=.ef.bf.
4e40 62 65 20 3d 20 22 ef bf be 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 be.=."..."......................
4e60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 35 2e 33 2e ..........................|.5.3.
4e80 32 20 20 55 2b 46 46 46 46 20 3d 20 65 66 20 62 66 20 62 66 20 3d 20 22 ef bf bf 22 20 20 20 20 2..U+FFFF.=.ef.bf.bf.=."..."....
4ea0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
4ec0 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ............|...................
4ee0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
4f00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 54 48 ............................|.TH
4f20 45 20 45 4e 44 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 E.END...........................
4f40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
4f60 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a ............|.