detached aa3d2dd

Merge branch 'feat/x9' into feat/xwayland-builtin

commit
aa3d2dd581a5991345051bb9fbf024be67efd835
author
brice · · 2026-10-22 16:26 UTC
merge of
0d743bc + 7071a51 · diff against the first parent
signature
GPG VerifiedCD88F9E564E0102646FB6077A1A07C7C7C3E349D · arch-gpg Verified for the committer email
20 files · +5357 -2967
M .mockery.yml +5 -0
@@ -72,6 +72,11 @@ packages:
7272 dir: internal/adapters/wayland
7373 pkgname: wayland
7474 filename: acquire_poller_mock_test.go
75+ xwmSelection:
76+ config:
77+ dir: internal/adapters/wayland
78+ pkgname: wayland
79+ filename: xwm_selection_mock_test.go
7580 syncobjDevice:
7681 config:
7782 dir: internal/adapters/wayland
M Makefile +1 -1
@@ -70,7 +70,7 @@ adapter-imports:
7070 [ -z "$$bad" ] || { echo "$$bad"; echo 'adapter imports another adapter: use ports or a shared library (Makefile ADAPTER_LIBS)' >&2; exit 1; }
7171 # Fast, mandatory guards for tiled content publications and SHM copies.
7272 perf-check:
73- CGO_ENABLED=0 go test ./internal/core ./internal/app ./internal/adapters/drm ./internal/adapters/headless ./internal/adapters/vulkan ./internal/adapters/wayland ./internal/adapters/outputkit/capture ./internal/adapters/screencast ./internal/adapters/wayland/xwm -run '^(TestAnimateAllocations|TestPublishAllocations|TestPublishSubscribersAllocations|TestPublishStashSlideAllocations|TestPublishOverviewAllocations|TestPublishLeavingAllocations|TestOutputRoutingAllocations|TestReportSeenAllocations|TestFrameLifecycleTransitionsAllocations|TestFullscreenShownAllocations|TestFrameDecisionAllocations|TestCommitFrameAllocations|TestColorPipelineAllocations|TestShownBySnapshotAllocations|TestFlipShowsAllocations|TestMRUNoteFocusDoesNotAllocateWhenSettled|TestDueFramesAllocations|TestRenderSteadyStateAllocations|TestRenderSteadyStateDMABufAllocations|TestSceneOpaqueRegionAllocations|TestSceneDeltaAllocations|TestAccountFlipAllocations|TestFlipDoneAllocations|TestSceneWalkUnchangedTiledSHM|TestTiledCommitPublishAllocations|TestCapturedCommitApplyAllocations|TestCapturedViewportApplyAllocations|TestEffectiveInputEmptyTreeAllocations|TestHeadlessTiledSHMCallbackAndCopyBudget|TestReleaseHeldAllocations|TestCommitDamageAllocations|TestEmitContentAllocations|TestPresentationPushAllocations|TestAnimatingFrameSendAllocations|TestContentBatchCycleAllocations|TestWriteMappedAllocations|TestCapturedForwardAllocations|TestCommandForwardAllocations|TestOutboxQueuedDeliveryAllocations|TestCastFrameAllocations|TestCastProducerAllocations|TestCaptureCycleAllocations|TestLogScenesAllocations|TestOverviewNamedRowsAllocations|TestBufferContentAllocations|TestDueFramesFireScratch|TestRetireSemaphoreAllocatesNothing|TestTableLookupAllocations|TestTableInsertRemoveAllocations|TestPropertyUnchangedAllocations|TestDispatchAllocations|TestConfigureFlushAllocations|TestFocusAllocations|TestSpaceAllocations|TestUnmanagedGeometryAllocations|TestFocusInUnmanagedAllocations|TestUnmanagedPublishAllocations|TestUnmanagedHitAllocations|TestOverrideMovedUnchangedAllocations|TestFullscreenConfigureAllocations|TestKeyboardGrabSyncAllocations)$$' -count=1
73+ CGO_ENABLED=0 go test ./internal/core ./internal/app ./internal/adapters/drm ./internal/adapters/headless ./internal/adapters/vulkan ./internal/adapters/wayland ./internal/adapters/outputkit/capture ./internal/adapters/screencast ./internal/adapters/wayland/xwm -run '^(TestAnimateAllocations|TestPublishAllocations|TestPublishSubscribersAllocations|TestPublishStashSlideAllocations|TestPublishOverviewAllocations|TestPublishLeavingAllocations|TestOutputRoutingAllocations|TestReportSeenAllocations|TestFrameLifecycleTransitionsAllocations|TestFullscreenShownAllocations|TestFrameDecisionAllocations|TestCommitFrameAllocations|TestColorPipelineAllocations|TestShownBySnapshotAllocations|TestFlipShowsAllocations|TestMRUNoteFocusDoesNotAllocateWhenSettled|TestDueFramesAllocations|TestRenderSteadyStateAllocations|TestRenderSteadyStateDMABufAllocations|TestSceneOpaqueRegionAllocations|TestSceneDeltaAllocations|TestAccountFlipAllocations|TestFlipDoneAllocations|TestSceneWalkUnchangedTiledSHM|TestTiledCommitPublishAllocations|TestCapturedCommitApplyAllocations|TestCapturedViewportApplyAllocations|TestEffectiveInputEmptyTreeAllocations|TestHeadlessTiledSHMCallbackAndCopyBudget|TestReleaseHeldAllocations|TestCommitDamageAllocations|TestEmitContentAllocations|TestPresentationPushAllocations|TestAnimatingFrameSendAllocations|TestContentBatchCycleAllocations|TestWriteMappedAllocations|TestCapturedForwardAllocations|TestCommandForwardAllocations|TestOutboxQueuedDeliveryAllocations|TestCastFrameAllocations|TestCastProducerAllocations|TestCaptureCycleAllocations|TestLogScenesAllocations|TestOverviewNamedRowsAllocations|TestBufferContentAllocations|TestDueFramesFireScratch|TestRetireSemaphoreAllocatesNothing|TestTableLookupAllocations|TestTableInsertRemoveAllocations|TestPropertyUnchangedAllocations|TestDispatchAllocations|TestConfigureFlushAllocations|TestFocusAllocations|TestSpaceAllocations|TestUnmanagedGeometryAllocations|TestFocusInUnmanagedAllocations|TestUnmanagedPublishAllocations|TestUnmanagedHitAllocations|TestOverrideMovedUnchangedAllocations|TestFullscreenConfigureAllocations|TestKeyboardGrabSyncAllocations|TestSelectionCopyAllocations|TestSelectionCopyAllocationsWaylandToX|TestSelectionINCRChunkAllocations)$$' -count=1
7474 CGO_ENABLED=0 go test -tags xturbo_poison ./internal/adapters/wayland/xwm -count=1
7575 check: vet test arch fakes-check log-check perf-check
7676
M internal/adapters/wayland/clipboard.go +5 -0
@@ -37,6 +37,8 @@ type clipSource struct {
3737 // used: the source was set, rejected or dragged; it cannot be set
3838 // again and takes no more MIME types.
3939 used bool
40+ // x11: the offer is an X client's selection (xSource), not a Wayland one.
41+ x11 bool
4042 // res is the wl_data_source (nil for the other protocols); actions are
4143 // its set_actions, for drag and drop only (dnd.go).
4244 res *wayland.DataSource
@@ -105,6 +107,7 @@ func (s *Server) setSelection(kind int, src *clipSource) {
105107 if src != nil && src != s.selections[kind] && src.alive() {
106108 src.cancel()
107109 }
110+ s.exposeToX(kind, nil) // X clients must not read a protected selection
108111 return
109112 }
110113 old := s.selections[kind]
@@ -116,6 +119,7 @@ func (s *Server) setSelection(kind int, src *clipSource) {
116119 old.cancel()
117120 }
118121 s.announceAll(kind)
122+ s.exposeToX(kind, src)
119123 }
120124
121125 // announceAll sends the selection of kind to the focused client and to
@@ -187,6 +191,7 @@ func (s *Server) sourceGone(src *clipSource) {
187191 if s.selections[kind] == src {
188192 s.selections[kind] = nil
189193 s.announceAll(kind)
194+ s.exposeToX(kind, nil)
190195 }
191196 }
192197 }
A internal/adapters/wayland/clipboard_xwm.go +93 -0
@@ -0,0 +1,93 @@
1+package wayland
2+
3+import (
4+ "slices"
5+
6+ "golang.org/x/sys/unix"
7+)
8+
9+// The text clipboard bridge between Wayland and the built-in XWM. An X
10+// client's selection becomes a clipSource like any other (xSource); a Wayland
11+// selection is exposed to X through exposeToX. The X protocol side lives in
12+// the xwm package; nothing of it reaches core or ports.
13+
14+// xwmSelection is the XWM as the clipboard sees it.
15+type xwmSelection interface {
16+ // WaylandSelection: a Wayland client owns kind with these MIME types;
17+ // nil mimes: none does (or it is protected).
18+ WaylandSelection(kind int, mimes []string)
19+ // SelectionReceive hands the XWM the write end of a reader's pipe (it
20+ // closes it) to fill with the X selection as mime.
21+ SelectionReceive(kind int, mime string, fd int)
22+}
23+
24+// xSource is the clipSource of an X-owned selection: no Wayland client, the
25+// data comes from the XWM. It is valid while it is the current X source.
26+func (s *Server) xSource(kind int, mimes []string) *clipSource {
27+ src := &clipSource{mimes: slices.Clone(mimes), used: true, x11: true}
28+ src.alive = func() bool { return s.xsel[kind] == src }
29+ src.cancel = func() {}
30+ src.send = func(mime string, fd int) {
31+ x := s.xwmSel
32+ if x == nil {
33+ return
34+ }
35+ // receive closes its fd after send: the XWM gets its own.
36+ dup, err := unix.FcntlInt(uintptr(fd), unix.F_DUPFD_CLOEXEC, 0)
37+ if err != nil {
38+ return
39+ }
40+ x.SelectionReceive(kind, mime, dup)
41+ }
42+ return src
43+}
44+
45+// setXSelection is the XWM's report: an X client owns kind (mimes), or none
46+// does. A Wayland owner that already replaced the X one is never clobbered.
47+func (s *Server) setXSelection(kind int, mimes []string) {
48+ if len(mimes) == 0 {
49+ cur := s.xsel[kind]
50+ s.xsel[kind] = nil
51+ if cur != nil && s.selections[kind] == cur {
52+ s.setSelection(kind, nil)
53+ }
54+ return
55+ }
56+ src := s.xSource(kind, mimes)
57+ s.xsel[kind] = src
58+ s.setSelection(kind, src)
59+}
60+
61+// exposeToX tells the XWM what Wayland offers. An X source is not exposed
62+// back (it is X's own); nil withdraws.
63+func (s *Server) exposeToX(kind int, src *clipSource) {
64+ if s.xwmSel == nil {
65+ return
66+ }
67+ if src == nil || src.x11 {
68+ s.xwmSel.WaylandSelection(kind, nil)
69+ return
70+ }
71+ s.xwmSel.WaylandSelection(kind, src.mimes)
72+}
73+
74+// xSelectionRead returns a non-blocking read end of the Wayland selection
75+// kind as mime, or -1.
76+func (s *Server) xSelectionRead(kind int, mime string) int {
77+ src := s.selections[kind]
78+ if src == nil || src.x11 || s.protected() || !src.alive() || !slices.Contains(src.mimes, mime) {
79+ return -1
80+ }
81+ var p [2]int
82+ if unix.Pipe2(p[:], unix.O_CLOEXEC) != nil {
83+ return -1
84+ }
85+ if unix.SetNonblock(p[0], true) != nil {
86+ unix.Close(p[0])
87+ unix.Close(p[1])
88+ return -1
89+ }
90+ src.send(mime, p[1])
91+ unix.Close(p[1])
92+ return p[0]
93+}
A internal/adapters/wayland/clipboard_xwm_test.go +147 -0
@@ -0,0 +1,147 @@
1+package wayland
2+
3+import (
4+ "testing"
5+ "time"
6+
7+ "github.com/bnema/go-wayland-bindings/server/wayland"
8+ "github.com/stretchr/testify/mock"
9+ "golang.org/x/sys/unix"
10+)
11+
12+func onDisplay(t *testing.T, s *Server, f func()) {
13+ t.Helper()
14+ if !s.display.Do(f) {
15+ t.Fatal("display stopped")
16+ }
17+}
18+
19+// receiveVia asks the offer for mime into a fresh pipe and returns its read end.
20+func receiveVia(t *testing.T, cc *clipClient, offer uint32, mime string) int {
21+ t.Helper()
22+ var fds [2]int
23+ if err := unix.Pipe2(fds[:], unix.O_CLOEXEC); err != nil {
24+ t.Fatal(err)
25+ }
26+ t.Cleanup(func() { unix.Close(fds[0]) })
27+ if err := wireRequest(cc.c, offer, uint16(wayland.DataOfferRequestReceive), []int{fds[1]}, mime); err != nil {
28+ t.Fatal(err)
29+ }
30+ _ = unix.Close(fds[1])
31+ if err := cc.c.Roundtrip(); err != nil {
32+ t.Fatal(err)
33+ }
34+ return fds[0]
35+}
36+
37+// An X selection reaches the focused client and not the others, is replaced
38+// when a Wayland client copies (and is then not read back from X), and is
39+// never read while the session is protected.
40+func TestXSelectionReachesWaylandClients(t *testing.T) {
41+ s, events, commands, dir := keyboardServer(t)
42+ state := installSecurity(t, s)
43+ xm := newMockxwmSelection(t)
44+ onDisplay(t, s, func() { s.xwmSel = xm })
45+ a := newClipClient(t, s, dir, events)
46+ b := newClipClient(t, s, dir, events)
47+ a.focus(t, commands)
48+
49+ // X owns CLIPBOARD: the focused client gets an offer, the other none.
50+ xm.EXPECT().WaylandSelection(selClipboard, []string(nil)).Maybe()
51+ onDisplay(t, s, func() { s.setXSelection(selClipboard, []string{"text/plain;charset=utf-8", "UTF8_STRING"}) })
52+ offer, ok := a.selection(t)
53+ if !ok || offer == 0 {
54+ t.Fatalf("focused client got no X offer: %d %v", offer, ok)
55+ }
56+ if id, ok := b.selection(t); ok {
57+ t.Fatalf("unfocused client got %d", id)
58+ }
59+
60+ // Reading reaches the XWM with a pipe it owns.
61+ got := make(chan string, 1)
62+ xm.EXPECT().SelectionReceive(selClipboard, "UTF8_STRING", mock.Anything).Run(func(_ int, mime string, fd int) {
63+ _, _ = unix.Write(fd, []byte("from x"))
64+ _ = unix.Close(fd)
65+ got <- mime
66+ }).Once()
67+ r := receiveVia(t, a, offer, "UTF8_STRING")
68+ select {
69+ case <-got:
70+ case <-time.After(2 * time.Second):
71+ t.Fatal("XWM never asked to receive")
72+ }
73+ buf := make([]byte, 16)
74+ n, err := unix.Read(r, buf)
75+ if err != nil || string(buf[:n]) != "from x" {
76+ t.Fatalf("pipe: %q %v", buf[:n], err)
77+ }
78+
79+ // Focus follows: b gets the X offer too (focus replay).
80+ if id := b.focus(t, commands); id == 0 {
81+ t.Fatal("no X offer on focus")
82+ }
83+
84+ // A Wayland copy replaces it and is exposed to X.
85+ xm.EXPECT().WaylandSelection(selClipboard, []string{"text/plain"}).Once()
86+ b.copy(t)
87+ if id, ok := b.selection(t); !ok || id == 0 {
88+ t.Fatal("copy gave no offer")
89+ }
90+ // X clearing afterwards never clobbers the Wayland owner.
91+ onDisplay(t, s, func() { s.setXSelection(selClipboard, nil) })
92+ if id, ok := b.selection(t); ok && id == 0 {
93+ t.Fatal("the Wayland selection was cleared by X")
94+ }
95+
96+ // Protection: the X offer is not readable, and X cannot read Wayland.
97+ onDisplay(t, s, func() { s.setXSelection(selClipboard, []string{"UTF8_STRING"}) })
98+ protect(t, s, state, 1, true)
99+ var fd int
100+ onDisplay(t, s, func() { fd = s.xSelectionRead(selClipboard, "text/plain") })
101+ if fd >= 0 {
102+ unix.Close(fd)
103+ t.Fatal("protected selection readable by X")
104+ }
105+ protect(t, s, state, 2, false)
106+}
107+
108+// A Wayland client's text selection is read for X through a pipe it fills.
109+func TestXSelectionReadFromWayland(t *testing.T) {
110+ s, events, commands, dir := keyboardServer(t)
111+ xm := newMockxwmSelection(t)
112+ onDisplay(t, s, func() { s.xwmSel = xm })
113+ a := newClipClient(t, s, dir, events)
114+ a.focus(t, commands)
115+ xm.EXPECT().WaylandSelection(selClipboard, []string(nil)).Maybe() // teardown destroys the source
116+ xm.EXPECT().WaylandSelection(selClipboard, []string{"text/plain"}).Once()
117+ src := a.copy(t)
118+ var fd int
119+ onDisplay(t, s, func() { fd = s.xSelectionRead(selClipboard, "text/plain") })
120+ if fd < 0 {
121+ t.Fatal("no read end")
122+ }
123+ defer unix.Close(fd)
124+ deadline := time.After(2 * time.Second)
125+ for len(src.sends) == 0 {
126+ if err := a.c.Roundtrip(); err != nil {
127+ t.Fatal(err)
128+ }
129+ select {
130+ case <-deadline:
131+ t.Fatal("source never asked to send")
132+ case <-time.After(5 * time.Millisecond):
133+ }
134+ }
135+ buf := make([]byte, 16)
136+ n, err := unix.Read(fd, buf)
137+ if err != nil || string(buf[:n]) != "pasted" {
138+ t.Fatalf("read %q %v", buf[:n], err)
139+ }
140+ onDisplay(t, s, func() {
141+ fd2 := s.xSelectionRead(selClipboard, "image/png")
142+ if fd2 >= 0 {
143+ unix.Close(fd2)
144+ t.Error("unoffered mime readable")
145+ }
146+ })
147+}
M internal/adapters/wayland/server.go +3 -0
@@ -313,6 +313,8 @@ type Server struct {
313313 cursorReady chan struct{}
314314 // Clipboard and primary selection (clipboard.go).
315315 selections [2]*clipSource
316+ xsel [2]*clipSource // the current X-owned source per kind, if any
317+ xwmSel xwmSelection // the XWM's clipboard side; nil without one
316318 // Drag and drop (dnd.go): the drag in progress, drops waiting for
317319 // their finish, and each client's data devices.
318320 dnd *dndState
@@ -607,6 +609,7 @@ func (s *Server) Run(ctx context.Context) error {
607609 if s.xwm != nil {
608610 s.xwm.CloseConn()
609611 s.xwm = nil
612+ s.xwmSel = nil
610613 }
611614 s.forgetXwayland()
612615 s.stopSecurityContexts()
M internal/adapters/wayland/x11window.go +24 -2
@@ -1,6 +1,8 @@
11 package wayland
22
33 import (
4+ "time"
5+
46 "github.com/bnema/go-wayland-bindings/server/wayland"
57 "github.com/bnema/go-wayland-bindings/server/xwaylandshell"
68 "github.com/bnema/neferwl/internal/adapters/wayland/xwm"
@@ -97,10 +99,11 @@ func (xwaylandSurface) Destroy(*xwaylandshell.XwaylandSurfaceV1) {}
9799 func (s *Server) installXWM(x *xwm.XWM) {
98100 s.teardownXWM()
99101 s.xwm = x
102+ s.xwmSel = x
100103 x.UseSpace(&s.xspace)
101104 if err := x.Attach(s.display, hostImpl{s}); err != nil {
102105 s.log.Warn().Err(err).Msg("X11 window management disabled")
103- s.xwm = nil
106+ s.xwm, s.xwmSel = nil, nil
104107 x.CloseConn()
105108 return
106109 }
@@ -110,13 +113,18 @@ func (s *Server) installXWM(x *xwm.XWM) {
110113 x.SetSerial(surf.identity, surf.x11Serial)
111114 }
112115 }
116+ for kind, src := range s.selections { // what Wayland offered before the XWM attached
117+ if src != nil && src.alive() {
118+ s.exposeToX(kind, src)
119+ }
120+ }
113121 x.LayoutChanged(true)
114122 }
115123
116124 // teardownXWM closes the window manager, dropping its windows. Idempotent.
117125 func (s *Server) teardownXWM() {
118126 if x := s.xwm; x != nil {
119- s.xwm = nil
127+ s.xwm, s.xwmSel = nil, nil
120128 x.Close()
121129 }
122130 }
@@ -373,6 +381,20 @@ func (h hostImpl) OverrideMoved(slot xwm.Slot, x, y, w, h2 int) {
373381 }
374382
375383 // OverrideGone ends an override window: unmapped, or destroyed.
384+func (h hostImpl) SelectionOwned(kind int, mimes []string) {
385+ h.s.log.Debug().Int("kind", kind).Int("mimes", len(mimes)).Msg("X selection owner changed")
386+ h.s.setXSelection(kind, mimes)
387+}
388+
389+func (h hostImpl) SelectionRead(kind int, mime string) int {
390+ return h.s.xSelectionRead(kind, mime)
391+}
392+
393+func (h hostImpl) After(d time.Duration, fn func()) func() {
394+ t := h.s.clock.AfterFunc(d, func() { h.s.display.Post(fn) })
395+ return func() { t.Stop() }
396+}
397+
376398 func (h hostImpl) OverrideGone(slot xwm.Slot) {
377399 s := h.s
378400 win := s.x11Slots[slot]
M internal/adapters/wayland/xwm/atoms.go +16 -0
@@ -46,6 +46,14 @@ const (
4646 atomClipboard
4747 atomPrimary
4848 atomTargets
49+ atomString
50+ atomText
51+ atomTextPlain
52+ atomTextPlainUTF8
53+ atomIncr
54+ atomTimestamp
55+ atomNeferwlData
56+ atomNeferwlTargets
4957 atomCount
5058 )
5159
@@ -93,4 +101,12 @@ var atomNames = [atomCount]string{
93101 atomClipboard: "CLIPBOARD",
94102 atomPrimary: "PRIMARY",
95103 atomTargets: "TARGETS",
104+ atomString: "STRING",
105+ atomText: "TEXT",
106+ atomTextPlain: "text/plain",
107+ atomTextPlainUTF8: "text/plain;charset=utf-8",
108+ atomIncr: "INCR",
109+ atomTimestamp: "TIMESTAMP",
110+ atomNeferwlData: "_NEFERWL_DATA",
111+ atomNeferwlTargets: "_NEFERWL_TARGETS",
96112 }
M internal/adapters/wayland/xwm/events.go +15 -2
@@ -21,6 +21,9 @@ const (
2121 kindVersion
2222 kindTree
2323 kindOverrideType
24+ kindSelTargets
25+ kindSelData
26+ kindSelOut
2427 )
2528
2629 // onEvent dispatches an X event. Before Attach there is no host: only the
@@ -59,6 +62,8 @@ func (x *XWM) onEvent(ev *xturbo.Event) {
5962 x.onClientMessage(ev)
6063 case xproto.KindFocusIn:
6164 x.onFocusIn(ev)
65+ default:
66+ x.onSelectionEvent(ev)
6267 }
6368 }
6469
@@ -95,6 +100,12 @@ func (x *XWM) onReply(r *xturbo.Reply) {
95100 case kindTree:
96101 x.onTreeReply(r)
97102 return
103+ case kindSelTargets:
104+ x.onTargetsReply(r)
105+ return
106+ case kindSelData:
107+ x.onSelDataReply(r)
108+ return
98109 }
99110 s, rec := x.tab.live(r.Args[0])
100111 if rec == nil {
@@ -126,6 +137,8 @@ func (x *XWM) onError(e *xturbo.XError) {
126137 return
127138 }
128139 switch e.Kind {
140+ case kindSelTargets, kindSelData, kindSelOut:
141+ x.onSelError(e)
129142 case kindRootMask:
130143 if e.Code == xproto.BadAccess {
131144 x.bootErr = ErrWMExists
@@ -165,7 +178,7 @@ func (x *XWM) onError(e *xturbo.XError) {
165178 func (x *XWM) onCreateNotify(ev *xturbo.Event) {
166179 e := xproto.CreateNotifyOf(ev)
167180 xid := uint32(e.Window())
168- if xid == x.wmWin || x.tab.lookup(xid) != 0 {
181+ if xid == x.wmWin || xid == x.selWin || x.tab.lookup(xid) != 0 {
169182 return
170183 }
171184 s := x.insert(xid)
@@ -213,7 +226,7 @@ func (x *XWM) onTreeReply(r *xturbo.Reply) {
213226 children := q.Children()
214227 for i := 0; i < children.Len(); i++ {
215228 xid := uint32(children.At(i))
216- if xid == x.wmWin || x.tab.lookup(xid) != 0 {
229+ if xid == x.wmWin || xid == x.selWin || x.tab.lookup(xid) != 0 {
217230 continue
218231 }
219232 s := x.insert(xid)
M internal/adapters/wayland/xwm/host.go +21 -1
@@ -1,6 +1,10 @@
11 package xwm
22
3-import "github.com/bnema/neferwl/internal/ports"
3+import (
4+ "time"
5+
6+ "github.com/bnema/neferwl/internal/ports"
7+)
48
59 // Slot is the XWM's window slot: table index + 1, stable until the window is
610 // destroyed. 0 means none.
@@ -53,6 +57,22 @@ type host interface {
5357 OverrideMoved(slot Slot, x, y, w, h int)
5458 // OverrideGone ends a mapped override window: unmapped or destroyed.
5559 OverrideGone(slot Slot)
60+
61+ // SelectionOwned: an X client owns kind (SelClipboard/SelPrimary) and
62+ // offers these MIME types, or none does any more (mimes nil). mimes is
63+ // scratch: the host copies it.
64+ SelectionOwned(kind int, mimes []string)
65+
66+ // SelectionRead asks for the data of the current Wayland selection kind
67+ // as mime: it returns a non-blocking read end the XWM closes, or -1 when
68+ // there is none, it is protected, or mime is not offered.
69+ SelectionRead(kind int, mime string) (fd int)
70+
71+ // After runs fn on the display goroutine once d has elapsed, unless the
72+ // returned cancel ran first. cancel is idempotent and display goroutine
73+ // only; fn may still run once after cancel when it was already queued,
74+ // so callers guard with their own generation.
75+ After(d time.Duration, fn func()) (cancel func())
5676 }
5777
5878 // fdSource is the display's event source for the X socket (*server.Source).
M internal/adapters/wayland/xwm/host_mock_test.go +164 -0
@@ -5,6 +5,8 @@
55 package xwm
66
77 import (
8+ "time"
9+
810 "github.com/bnema/neferwl/internal/ports"
911 mock "github.com/stretchr/testify/mock"
1012 )
@@ -45,6 +47,65 @@ func (_m *mockhost) EXPECT() *mockhost_Expecter {
4547 return &mockhost_Expecter{mock: &_m.Mock}
4648 }
4749
50+// After provides a mock function for the type mockhost
51+func (_mock *mockhost) After(d time.Duration, fn func()) func() {
52+ ret := _mock.Called(d, fn)
53+
54+ if len(ret) == 0 {
55+ panic("no return value specified for After")
56+ }
57+
58+ var r0 func()
59+ if returnFunc, ok := ret.Get(0).(func(time.Duration, func()) func()); ok {
60+ r0 = returnFunc(d, fn)
61+ } else {
62+ if ret.Get(0) != nil {
63+ r0 = ret.Get(0).(func())
64+ }
65+ }
66+ return r0
67+}
68+
69+// mockhost_After_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'After'
70+type mockhost_After_Call struct {
71+ *mock.Call
72+}
73+
74+// After is a helper method to define mock.On call
75+// - d time.Duration
76+// - fn func()
77+func (_e *mockhost_Expecter) After(d any, fn any) *mockhost_After_Call {
78+ return &mockhost_After_Call{Call: _e.mock.On("After", d, fn)}
79+}
80+
81+func (_c *mockhost_After_Call) Run(run func(d time.Duration, fn func())) *mockhost_After_Call {
82+ _c.Call.Run(func(args mock.Arguments) {
83+ var arg0 time.Duration
84+ if args[0] != nil {
85+ arg0 = args[0].(time.Duration)
86+ }
87+ var arg1 func()
88+ if args[1] != nil {
89+ arg1 = args[1].(func())
90+ }
91+ run(
92+ arg0,
93+ arg1,
94+ )
95+ })
96+ return _c
97+}
98+
99+func (_c *mockhost_After_Call) Return(cancel func()) *mockhost_After_Call {
100+ _c.Call.Return(cancel)
101+ return _c
102+}
103+
104+func (_c *mockhost_After_Call) RunAndReturn(run func(d time.Duration, fn func()) func()) *mockhost_After_Call {
105+ _c.Call.Return(run)
106+ return _c
107+}
108+
48109 // AppID provides a mock function for the type mockhost
49110 func (_mock *mockhost) AppID(slot Slot, appID string) {
50111 _mock.Called(slot, appID)
@@ -564,6 +625,109 @@ func (_c *mockhost_Ready_Call) RunAndReturn(run func(slot Slot, info WindowInfo)
564625 return _c
565626 }
566627
628+// SelectionOwned provides a mock function for the type mockhost
629+func (_mock *mockhost) SelectionOwned(kind int, mimes []string) {
630+ _mock.Called(kind, mimes)
631+ return
632+}
633+
634+// mockhost_SelectionOwned_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'SelectionOwned'
635+type mockhost_SelectionOwned_Call struct {
636+ *mock.Call
637+}
638+
639+// SelectionOwned is a helper method to define mock.On call
640+// - kind int
641+// - mimes []string
642+func (_e *mockhost_Expecter) SelectionOwned(kind any, mimes any) *mockhost_SelectionOwned_Call {
643+ return &mockhost_SelectionOwned_Call{Call: _e.mock.On("SelectionOwned", kind, mimes)}
644+}
645+
646+func (_c *mockhost_SelectionOwned_Call) Run(run func(kind int, mimes []string)) *mockhost_SelectionOwned_Call {
647+ _c.Call.Run(func(args mock.Arguments) {
648+ var arg0 int
649+ if args[0] != nil {
650+ arg0 = args[0].(int)
651+ }
652+ var arg1 []string
653+ if args[1] != nil {
654+ arg1 = args[1].([]string)
655+ }
656+ run(
657+ arg0,
658+ arg1,
659+ )
660+ })
661+ return _c
662+}
663+
664+func (_c *mockhost_SelectionOwned_Call) Return() *mockhost_SelectionOwned_Call {
665+ _c.Call.Return()
666+ return _c
667+}
668+
669+func (_c *mockhost_SelectionOwned_Call) RunAndReturn(run func(kind int, mimes []string)) *mockhost_SelectionOwned_Call {
670+ _c.Run(run)
671+ return _c
672+}
673+
674+// SelectionRead provides a mock function for the type mockhost
675+func (_mock *mockhost) SelectionRead(kind int, mime string) int {
676+ ret := _mock.Called(kind, mime)
677+
678+ if len(ret) == 0 {
679+ panic("no return value specified for SelectionRead")
680+ }
681+
682+ var r0 int
683+ if returnFunc, ok := ret.Get(0).(func(int, string) int); ok {
684+ r0 = returnFunc(kind, mime)
685+ } else {
686+ r0 = ret.Get(0).(int)
687+ }
688+ return r0
689+}
690+
691+// mockhost_SelectionRead_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'SelectionRead'
692+type mockhost_SelectionRead_Call struct {
693+ *mock.Call
694+}
695+
696+// SelectionRead is a helper method to define mock.On call
697+// - kind int
698+// - mime string
699+func (_e *mockhost_Expecter) SelectionRead(kind any, mime any) *mockhost_SelectionRead_Call {
700+ return &mockhost_SelectionRead_Call{Call: _e.mock.On("SelectionRead", kind, mime)}
701+}
702+
703+func (_c *mockhost_SelectionRead_Call) Run(run func(kind int, mime string)) *mockhost_SelectionRead_Call {
704+ _c.Call.Run(func(args mock.Arguments) {
705+ var arg0 int
706+ if args[0] != nil {
707+ arg0 = args[0].(int)
708+ }
709+ var arg1 string
710+ if args[1] != nil {
711+ arg1 = args[1].(string)
712+ }
713+ run(
714+ arg0,
715+ arg1,
716+ )
717+ })
718+ return _c
719+}
720+
721+func (_c *mockhost_SelectionRead_Call) Return(fd int) *mockhost_SelectionRead_Call {
722+ _c.Call.Return(fd)
723+ return _c
724+}
725+
726+func (_c *mockhost_SelectionRead_Call) RunAndReturn(run func(kind int, mime string) int) *mockhost_SelectionRead_Call {
727+ _c.Call.Return(run)
728+ return _c
729+}
730+
567731 // Title provides a mock function for the type mockhost
568732 func (_mock *mockhost) Title(slot Slot, title string) {
569733 _mock.Called(slot, title)
M internal/adapters/wayland/xwm/props.go +7 -0
@@ -113,6 +113,13 @@ func (x *XWM) requestProp(s Slot, idx int) {
113113 // being mapped or is mapped; unwatched atoms cost nothing.
114114 func (x *XWM) onPropertyNotify(ev *xturbo.Event) {
115115 e := xproto.PropertyNotifyOf(ev)
116+ if uint32(e.Window()) == x.selWin && x.selWin != 0 {
117+ x.onSelProperty(ev)
118+ return
119+ }
120+ if x.onRequestorProperty(e) {
121+ return
122+ }
116123 s := x.tab.lookup(uint32(e.Window()))
117124 if s == 0 {
118125 return
A internal/adapters/wayland/xwm/selection.go +1032 -0
@@ -0,0 +1,1032 @@
1+package xwm
2+
3+import (
4+ "encoding/binary"
5+ "errors"
6+ "time"
7+
8+ "bnema.dev/xturbo"
9+ "bnema.dev/xturbo/xfixes"
10+ "bnema.dev/xturbo/xproto"
11+ "golang.org/x/sys/unix"
12+)
13+
14+// The selection bridge: text-only CLIPBOARD and PRIMARY between X clients and
15+// the Wayland clipboard. Display goroutine only; nothing here is locked.
16+
17+// Selection kinds, in the order clipboard.go uses.
18+const (
19+ SelClipboard = iota
20+ SelPrimary
21+ selKinds
22+)
23+
24+// textMimes are the MIME types the bridge offers, in the order of preference;
25+// mimeTarget gives the atom an X owner must advertise for each.
26+var (
27+ textMimes = [5]string{"text/plain;charset=utf-8", "text/plain", "UTF8_STRING", "STRING", "TEXT"}
28+ mimeTarget = [5]int{atomUTF8String, atomString, atomUTF8String, atomString, atomUTF8String}
29+)
30+
31+// selState is one selection.
32+type selState struct {
33+ atom uint32
34+ gen uint32 // bumped on every ownership change; stales TARGETS probes
35+ owner uint32 // X owner window other than selWin, 0 none
36+ ours bool // selWin owns the selection (Wayland -> X)
37+ // wl is what the Wayland side offers while ours: raw text availability.
38+ wlUTF8, wlPlain bool
39+ wlMime [len(textMimes)]string // offered text MIMEs, in textMimes order, "" absent
40+}
41+
42+const (
43+ chunk = 65536 // every transfer step moves at most this many bytes
44+ nXfer = 4 // concurrent transfers per direction, and pool buffers
45+ tickEvery = time.Second
46+ xIdleMax = 10 // ticks without X-side progress
47+ rIdleMax = 30 // ticks of a reader that does not drain its pipe
48+)
49+
50+// bufPool is the fixed set of transfer buffers.
51+type bufPool struct {
52+ bufs [nXfer][chunk]byte
53+ free [nXfer]int8
54+ n int
55+}
56+
57+func (p *bufPool) init() {
58+ for i := range p.free {
59+ p.free[i] = int8(i)
60+ }
61+ p.n = nXfer
62+}
63+
64+// get returns a free buffer index, -1 when the pool is exhausted.
65+func (p *bufPool) get() int {
66+ if p.n == 0 {
67+ return -1
68+ }
69+ p.n--
70+ return int(p.free[p.n])
71+}
72+
73+func (p *bufPool) put(i int) {
74+ p.free[p.n] = int8(i)
75+ p.n++
76+}
77+
78+// X -> Wayland transfer states.
79+const (
80+ inFree uint8 = iota
81+ inQueued // waiting for the conversion property to be free
82+ inConverting
83+ inWaitIncr // waiting for the next INCR chunk (PropertyNotify)
84+ inWriting // a buffer is pending on the Wayland reader's pipe
85+ inReading // a GetProperty is outstanding
86+)
87+
88+// xin is one X -> Wayland transfer.
89+type xin struct {
90+ x *XWM
91+ idx int
92+ state uint8
93+ kind int
94+ fd int
95+ target uint32
96+ order uint64
97+ gen uint32 // stales replies of an aborted transfer
98+ incr bool
99+ buf int
100+ off, n int
101+ words uint32 // long offset of the next piece of a long property
102+ more bool // the last piece left bytes in the property
103+ ready bool // the owner wrote the next INCR chunk while a buffer was pending
104+ idle int
105+ src fdSource
106+ onR func() // pipe hangup
107+ onW func() // pipe writable
108+}
109+
110+// selBridge is the XWM's selection state.
111+type selBridge struct {
112+ st [selKinds]selState
113+ mimes [len(textMimes)]string // scratch handed to SelectionOwned
114+ pool bufPool
115+ in [nXfer]xin
116+ out [nXfer]xout
117+ order uint64
118+ // active is the transfer that owns the conversion property, -1 none.
119+ active int
120+ timerOn bool
121+ cancel func()
122+ tickFn func()
123+}
124+
125+func (x *XWM) initSelection() {
126+ b := &x.sel
127+ b.pool.init()
128+ b.active = -1
129+ b.tickFn = x.selTick
130+ for i := range b.in {
131+ t := &b.in[i]
132+ t.x, t.idx, t.buf = x, i, -1
133+ t.onR = func() { t.x.inAbort(t.idx, true) }
134+ t.onW = func() { t.x.inWritable(t.idx) }
135+ }
136+ for i := range b.out {
137+ o := &b.out[i]
138+ o.x, o.idx, o.buf, o.fd = x, i, -1, -1
139+ o.onR = func() { o.x.outReadable(o.idx) }
140+ }
141+}
142+
143+// bootSelection creates the selection window and asks for ownership events.
144+// Without XFixes the bridge stays off.
145+func (x *XWM) bootSelection(root xproto.Window) {
146+ if !x.conn.Ext().Info(xturbo.ExtXFixes).Present {
147+ x.log.Warn().Msg("X server has no XFixes: clipboard bridge disabled")
148+ return
149+ }
150+ xid := x.selWin
151+ b := x.conn.Buf()
152+ var wv xproto.CreateWindowValues
153+ wv.SetEventMask(xproto.EventMaskPropertyChange)
154+ xproto.CreateWindow(b, 0, xproto.Window(xid), root, -1, -1, 1, 1, 0, xproto.WindowClassInputOnly, 0, &wv)
155+ x.sel.st[SelClipboard].atom = x.atoms[atomClipboard]
156+ x.sel.st[SelPrimary].atom = x.atoms[atomPrimary]
157+ const mask = xfixes.SelectionEventMaskSetSelectionOwner | xfixes.SelectionEventMaskSelectionWindowDestroy | xfixes.SelectionEventMaskSelectionClientClose
158+ for k := range x.sel.st {
159+ xfixes.SelectSelectionInput(b, root, xproto.Atom(x.sel.st[k].atom), mask)
160+ }
161+}
162+
163+// selKind maps a selection atom to its kind, -1 when it is neither.
164+func (x *XWM) selKind(atom uint32) int {
165+ for k := range x.sel.st {
166+ if x.sel.st[k].atom == atom && atom != 0 {
167+ return k
168+ }
169+ }
170+ return -1
171+}
172+
173+// onSelectionEvent handles the selection events; others are ignored.
174+func (x *XWM) onSelectionEvent(ev *xturbo.Event) {
175+ if x.selWin == 0 {
176+ return
177+ }
178+ switch ev.Kind {
179+ case xfixes.KindSelectionNotify:
180+ x.onXFixesSelection(ev)
181+ case xproto.KindSelectionNotify:
182+ x.onSelectionNotify(ev)
183+ case xproto.KindSelectionRequest:
184+ x.onSelectionRequest(ev)
185+ case xproto.KindSelectionClear:
186+ x.onSelectionClear(ev)
187+ }
188+}
189+
190+// onXFixesSelection: the owner of a selection changed.
191+func (x *XWM) onXFixesSelection(ev *xturbo.Event) {
192+ e := xfixes.SelectionNotifyOf(ev)
193+ k := x.selKind(uint32(e.Selection()))
194+ if k < 0 {
195+ return
196+ }
197+ st := &x.sel.st[k]
198+ owner := uint32(e.Owner())
199+ if owner == x.selWin { // our own SetSelectionOwner echoed back
200+ return
201+ }
202+ st.gen++
203+ st.owner = owner
204+ if owner == 0 {
205+ x.log.Debug().Int("kind", k).Msg("selection: no X owner")
206+ x.host.SelectionOwned(k, nil)
207+ return
208+ }
209+ x.log.Debug().Int("kind", k).Uint32("owner", owner).Msg("selection: X owner")
210+ xproto.ConvertSelection(x.conn.Buf(), xproto.Window(x.selWin), xproto.Atom(st.atom),
211+ xproto.Atom(x.atoms[atomTargets]), xproto.Atom(x.atoms[atomNeferwlTargets]), 0)
212+ x.wake()
213+}
214+
215+// onSelectionNotify: a ConvertSelection we issued was answered.
216+func (x *XWM) onSelectionNotify(ev *xturbo.Event) {
217+ e := xproto.SelectionNotifyOf(ev)
218+ if uint32(e.Requestor()) != x.selWin {
219+ return
220+ }
221+ k := x.selKind(uint32(e.Selection()))
222+ if k < 0 {
223+ return
224+ }
225+ if uint32(e.Target()) != x.atoms[atomTargets] {
226+ x.onDataNotify(e)
227+ return
228+ }
229+ {
230+ if e.Property() == 0 {
231+ if x.sel.st[k].owner != 0 {
232+ x.host.SelectionOwned(k, nil)
233+ }
234+ return
235+ }
236+ seq := xproto.GetProperty(x.conn.Buf(), true, xproto.Window(x.selWin), xproto.Atom(x.atoms[atomNeferwlTargets]), 0, 0, 256)
237+ x.expect(seq, kindSelTargets, uint32(k), x.sel.st[k].gen)
238+ x.wake()
239+ return
240+ }
241+}
242+
243+// onTargetsReply turns the owner's TARGETS list into the MIME types offered
244+// to Wayland: the text subset, empty for images, files and the like.
245+func (x *XWM) onTargetsReply(r *xturbo.Reply) {
246+ k := int(r.Args[0])
247+ if k < 0 || k >= selKinds || r.Args[1] != x.sel.st[k].gen {
248+ return
249+ }
250+ g, ok := xproto.ParseGetPropertyReply(r.Raw)
251+ if !ok {
252+ return
253+ }
254+ var have [atomCount]bool
255+ if g.Format() == 32 {
256+ v := g.Value()
257+ for i := 0; i+4 <= len(v); i += 4 {
258+ a := binary.LittleEndian.Uint32(v[i:])
259+ for _, t := range [...]int{atomUTF8String, atomString, atomText} {
260+ if a == x.atoms[t] {
261+ have[t] = true
262+ }
263+ }
264+ }
265+ }
266+ n := 0
267+ for i, m := range textMimes {
268+ if have[mimeTarget[i]] {
269+ x.sel.mimes[n] = m
270+ n++
271+ }
272+ }
273+ if n == 0 {
274+ x.host.SelectionOwned(k, nil)
275+ return
276+ }
277+ x.host.SelectionOwned(k, x.sel.mimes[:n])
278+}
279+
280+// ---- X -> Wayland ----
281+
282+// SelectionReceive: a Wayland reader wants the X selection kind as mime. The
283+// XWM takes fd (a write end it now owns) and closes it when done.
284+func (x *XWM) SelectionReceive(kind int, mime string, fd int) {
285+ target := uint32(0)
286+ for i, m := range textMimes {
287+ if m == mime {
288+ target = x.atoms[mimeTarget[i]]
289+ break
290+ }
291+ }
292+ if x.selWin == 0 || x.closed || kind < 0 || kind >= selKinds || target == 0 || x.sel.st[kind].owner == 0 {
293+ _ = unix.Close(fd)
294+ return
295+ }
296+ if unix.SetNonblock(fd, true) != nil {
297+ _ = unix.Close(fd)
298+ return
299+ }
300+ for i := range x.sel.in {
301+ t := &x.sel.in[i]
302+ if t.state != inFree {
303+ continue
304+ }
305+ x.sel.order++
306+ t.state, t.kind, t.fd, t.target, t.order = inQueued, kind, fd, target, x.sel.order
307+ t.incr, t.buf, t.off, t.n, t.words, t.more, t.ready, t.idle, t.src = false, -1, 0, 0, 0, false, false, 0, nil
308+ x.selEnsureTimer()
309+ x.inStartNext()
310+ return
311+ }
312+ x.log.Warn().Msg("selection: too many transfers, paste refused")
313+ _ = unix.Close(fd)
314+}
315+
316+// inStartNext starts the oldest queued transfer when none is converting.
317+func (x *XWM) inStartNext() {
318+ b := &x.sel
319+ if b.active >= 0 {
320+ return
321+ }
322+ best := -1
323+ for i := range b.in {
324+ if b.in[i].state == inQueued && (best < 0 || b.in[i].order < b.in[best].order) {
325+ best = i
326+ }
327+ }
328+ if best < 0 {
329+ return
330+ }
331+ t := &b.in[best]
332+ t.state, t.idle = inConverting, 0
333+ b.active = best
334+ xproto.ConvertSelection(x.conn.Buf(), xproto.Window(x.selWin), xproto.Atom(b.st[t.kind].atom),
335+ xproto.Atom(t.target), xproto.Atom(x.atoms[atomNeferwlData]), 0)
336+ x.wake()
337+}
338+
339+// inFinish ends transfer i and starts the next one.
340+func (x *XWM) inFinish(i int) {
341+ b := &x.sel
342+ t := &b.in[i]
343+ if t.src != nil {
344+ t.src.Remove()
345+ t.src = nil
346+ }
347+ if t.fd >= 0 {
348+ _ = unix.Close(t.fd)
349+ }
350+ if t.buf >= 0 {
351+ b.pool.put(t.buf)
352+ t.buf = -1
353+ }
354+ t.gen++
355+ t.state, t.fd = inFree, -1
356+ if b.active == i {
357+ b.active = -1
358+ }
359+ x.inStartNext()
360+}
361+
362+// inAbort drops transfer i, deleting the conversion property when X may still
363+// be writing it.
364+func (x *XWM) inAbort(i int, del bool) {
365+ t := &x.sel.in[i]
366+ if t.state == inFree {
367+ return
368+ }
369+ if del && x.sel.active == i && !x.closed {
370+ xproto.DeleteProperty(x.conn.Buf(), xproto.Window(x.selWin), xproto.Atom(x.atoms[atomNeferwlData]))
371+ x.wake()
372+ }
373+ x.inFinish(i)
374+}
375+
376+// onDataNotify: the owner answered our data ConvertSelection.
377+func (x *XWM) onDataNotify(e xproto.SelectionNotifyEvent) {
378+ i := x.sel.active
379+ if i < 0 {
380+ return
381+ }
382+ t := &x.sel.in[i]
383+ if t.state != inConverting || uint32(e.Target()) != t.target {
384+ return
385+ }
386+ if e.Property() == 0 {
387+ x.inFinish(i)
388+ return
389+ }
390+ t.words = 0
391+ x.inRequest(i)
392+}
393+
394+// inRequest asks for the next piece of the property; delete makes INCR and
395+// whole-value reads advance.
396+func (x *XWM) inRequest(i int) {
397+ t := &x.sel.in[i]
398+ t.state = inReading
399+ seq := xproto.GetProperty(x.conn.Buf(), true, xproto.Window(x.selWin), xproto.Atom(x.atoms[atomNeferwlData]),
400+ 0, t.words, chunk/4)
401+ if seq != 0 {
402+ if err := x.conn.Expect(seq, kindSelData, uint32(i), t.gen, 0, 0); err != nil {
403+ x.stats.RingFull++
404+ }
405+ }
406+ x.wake()
407+}
408+
409+// onSelDataReply handles one piece of the converted property.
410+func (x *XWM) onSelDataReply(r *xturbo.Reply) {
411+ i := int(r.Args[0])
412+ if i < 0 || i >= nXfer {
413+ return
414+ }
415+ t := &x.sel.in[i]
416+ if t.state != inReading || t.gen != r.Args[1] {
417+ return
418+ }
419+ g, ok := xproto.ParseGetPropertyReply(r.Raw)
420+ if !ok || g.Format() == 0 {
421+ x.inAbort(i, false)
422+ return
423+ }
424+ t.idle = 0
425+ if uint32(g.Type()) == x.atoms[atomIncr] {
426+ t.incr, t.state, t.words, t.more = true, inWaitIncr, 0, false
427+ return
428+ }
429+ v := g.Value()
430+ if g.Format() != 8 || len(v) > chunk {
431+ x.inAbort(i, true)
432+ return
433+ }
434+ t.more = g.BytesAfter() > 0
435+ if len(v) == 0 {
436+ if t.more { // cannot happen: bytes remain only after a non-empty read
437+ x.inAbort(i, true)
438+ return
439+ }
440+ x.inNext(i)
441+ return
442+ }
443+ b := x.sel.pool.get()
444+ if b < 0 {
445+ x.log.Warn().Msg("selection: no free buffer, paste aborted")
446+ x.inAbort(i, true)
447+ return
448+ }
449+ t.buf = b
450+ t.n = copy(x.sel.pool.bufs[b][:], v)
451+ t.off = 0
452+ t.words += uint32(t.n) / 4
453+ t.state = inWriting
454+ x.inDrain(i)
455+}
456+
457+// inDrain writes the pending buffer to the reader's pipe.
458+func (x *XWM) inDrain(i int) {
459+ t := &x.sel.in[i]
460+ buf := &x.sel.pool.bufs[t.buf]
461+ for t.off < t.n {
462+ n, err := unix.Write(t.fd, buf[t.off:t.n])
463+ switch {
464+ case err == nil:
465+ t.off += n
466+ t.idle = 0
467+ case errors.Is(err, unix.EINTR):
468+ case errors.Is(err, unix.EAGAIN):
469+ x.inWatch(i, true)
470+ return
471+ default: // EPIPE: the reader went away
472+ x.inAbort(i, true)
473+ return
474+ }
475+ }
476+ x.sel.pool.put(t.buf)
477+ t.buf = -1
478+ if t.src != nil {
479+ x.inWatch(i, false)
480+ }
481+ x.inNext(i)
482+}
483+
484+// inWatch arms or disarms writable interest on the reader's pipe.
485+func (x *XWM) inWatch(i int, on bool) {
486+ t := &x.sel.in[i]
487+ if t.src == nil {
488+ if !on || x.addFD == nil {
489+ if on {
490+ x.inAbort(i, true)
491+ }
492+ return
493+ }
494+ src, err := x.addFD(t.fd, t.onR, t.onW)
495+ if err != nil {
496+ x.inAbort(i, true)
497+ return
498+ }
499+ t.src = src
500+ }
501+ if err := t.src.SetWritable(on); err != nil {
502+ x.inAbort(i, true)
503+ }
504+}
505+
506+// inWritable: the pipe has room again.
507+func (x *XWM) inWritable(i int) {
508+ t := &x.sel.in[i]
509+ if t.state == inWriting && t.buf >= 0 {
510+ x.inDrain(i)
511+ }
512+}
513+
514+// inNext decides what follows a drained (or empty) piece.
515+func (x *XWM) inNext(i int) {
516+ t := &x.sel.in[i]
517+ switch {
518+ case t.more: // the rest of this property
519+ x.inRequest(i)
520+ case t.incr && t.n > 0:
521+ t.state, t.n, t.words = inWaitIncr, 0, 0
522+ if t.ready {
523+ t.ready = false
524+ x.inRequest(i)
525+ }
526+ default: // single value done, or the empty INCR terminator
527+ x.inFinish(i)
528+ }
529+}
530+
531+// onSelProperty: PropertyNotify on the selection window.
532+func (x *XWM) onSelProperty(ev *xturbo.Event) {
533+ e := xproto.PropertyNotifyOf(ev)
534+ if e.State() != xproto.PropertyNewValue || uint32(e.Atom()) != x.atoms[atomNeferwlData] {
535+ return
536+ }
537+ // (a Deleted state on a requestor is handled by onRequestorProperty)
538+ i := x.sel.active
539+ if i < 0 || !x.sel.in[i].incr {
540+ return
541+ }
542+ t := &x.sel.in[i]
543+ switch t.state {
544+ case inWaitIncr:
545+ t.idle = 0
546+ t.n = 0
547+ x.inRequest(i)
548+ case inWriting, inReading:
549+ t.ready = true // no request while a buffer is pending: backpressure
550+ }
551+}
552+
553+// onSelError: a selection request failed; the awaited reply never comes.
554+func (x *XWM) onSelError(e *xturbo.XError) {
555+ if e.Kind == kindSelOut {
556+ if i := int(e.Args[0]); i >= 0 && i < nXfer && x.sel.out[i].gen == e.Args[1] && x.sel.out[i].state != outFree {
557+ x.outAbort(i)
558+ }
559+ return
560+ }
561+ if e.Kind == kindSelData {
562+ if i := int(e.Args[0]); i >= 0 && i < nXfer && x.sel.in[i].gen == e.Args[1] && x.sel.in[i].state == inReading {
563+ x.inAbort(i, false)
564+ }
565+ }
566+}
567+
568+// ---- timeouts ----
569+
570+func (x *XWM) selEnsureTimer() {
571+ b := &x.sel
572+ if b.timerOn || x.after == nil {
573+ return
574+ }
575+ b.timerOn = true
576+ b.cancel = x.after(tickEvery, b.tickFn)
577+}
578+
579+// selTick ages every transfer by one second and aborts the stalled ones.
580+func (x *XWM) selTick() {
581+ b := &x.sel
582+ b.timerOn, b.cancel = false, nil
583+ if x.closed {
584+ return
585+ }
586+ live := false
587+ for i := range b.in {
588+ t := &b.in[i]
589+ if t.state == inFree {
590+ continue
591+ }
592+ t.idle++
593+ limit := xIdleMax
594+ if t.state == inWriting {
595+ limit = rIdleMax
596+ }
597+ if t.state != inQueued && t.idle >= limit {
598+ x.log.Warn().Int("kind", t.kind).Msg("selection: transfer timed out")
599+ x.inAbort(i, true)
600+ continue
601+ }
602+ live = true
603+ }
604+ for i := range b.out {
605+ o := &b.out[i]
606+ if o.state == outFree {
607+ continue
608+ }
609+ o.idle++
610+ limit := rIdleMax
611+ if o.incr && o.n > 0 && !o.credit {
612+ limit = xIdleMax // the requestor does not delete the property
613+ }
614+ if o.idle >= limit {
615+ x.log.Warn().Int("kind", o.kind).Msg("selection: transfer timed out")
616+ x.outAbort(i)
617+ continue
618+ }
619+ live = true
620+ }
621+ if live {
622+ x.selEnsureTimer()
623+ }
624+}
625+
626+// selClose aborts every transfer.
627+func (x *XWM) selClose() {
628+ for i := range x.sel.out {
629+ if x.sel.out[i].state != outFree {
630+ x.outAbort(i)
631+ }
632+ }
633+ for i := range x.sel.in {
634+ if x.sel.in[i].state != inFree {
635+ x.inAbort(i, false)
636+ }
637+ }
638+ if x.sel.cancel != nil {
639+ x.sel.cancel()
640+ x.sel.cancel = nil
641+ }
642+}
643+
644+// ---- Wayland -> X ----
645+
646+// Wayland -> X transfer states.
647+const (
648+ outFree uint8 = iota
649+ outActive
650+)
651+
652+// xout is one Wayland -> X transfer.
653+type xout struct {
654+ x *XWM
655+ idx int
656+ state uint8
657+ kind int
658+ requestor uint32
659+ property uint32
660+ target uint32
661+ time uint32
662+ fd int
663+ buf int
664+ n int
665+ eof bool
666+ incr bool // INCR announced
667+ credit bool // the requestor deleted the property: the next chunk may go
668+ notified bool // the requestor got its SelectionNotify
669+ idle int
670+ gen uint32
671+ src fdSource
672+ onR func()
673+}
674+
675+// WaylandSelection: a Wayland client owns kind with these MIME types, or none
676+// does (mimes nil). The XWM takes X ownership when text is offered.
677+func (x *XWM) WaylandSelection(kind int, mimes []string) {
678+ if x.selWin == 0 || x.closed || kind < 0 || kind >= selKinds || x.host == nil {
679+ return
680+ }
681+ st := &x.sel.st[kind]
682+ st.wlUTF8, st.wlPlain = false, false
683+ st.wlMime = [len(textMimes)]string{}
684+ for _, m := range mimes {
685+ for i, tm := range textMimes {
686+ if m != tm {
687+ continue
688+ }
689+ st.wlMime[i] = m
690+ if mimeTarget[i] == atomUTF8String {
691+ st.wlUTF8 = true
692+ } else {
693+ st.wlPlain = true
694+ }
695+ }
696+ }
697+ for i := range x.sel.out { // the data being served is stale
698+ if x.sel.out[i].state != outFree && x.sel.out[i].kind == kind {
699+ x.outAbort(i)
700+ }
701+ }
702+ b := x.conn.Buf()
703+ if !st.wlUTF8 && !st.wlPlain {
704+ if st.ours {
705+ st.ours = false
706+ xproto.SetSelectionOwner(b, 0, xproto.Atom(st.atom), 0)
707+ x.wake()
708+ }
709+ return
710+ }
711+ st.ours = true
712+ st.gen++
713+ st.owner = 0
714+ xproto.SetSelectionOwner(b, xproto.Window(x.selWin), xproto.Atom(st.atom), 0)
715+ x.log.Debug().Int("kind", kind).Msg("selection: Wayland owner")
716+ x.wake()
717+}
718+
719+// onSelectionClear: someone else took a selection from selWin.
720+func (x *XWM) onSelectionClear(ev *xturbo.Event) {
721+ e := xproto.SelectionClearOf(ev)
722+ k := x.selKind(uint32(e.Selection()))
723+ if k < 0 || uint32(e.Owner()) != x.selWin {
724+ return
725+ }
726+ x.sel.st[k].ours = false
727+ for i := range x.sel.out {
728+ if x.sel.out[i].state != outFree && x.sel.out[i].kind == k {
729+ x.outAbort(i)
730+ }
731+ }
732+}
733+
734+// notify sends a SelectionNotify to the requestor; property 0 refuses.
735+func (x *XWM) notify(requestor, selection, target, property, time uint32) {
736+ d := xproto.SelectionNotifyEventData{
737+ Time: xproto.Timestamp(time), Requestor: xproto.Window(requestor),
738+ Selection: xproto.Atom(selection), Target: xproto.Atom(target), Property: xproto.Atom(property),
739+ }
740+ var ev [32]byte
741+ d.Put(&ev)
742+ xproto.SendEvent(x.conn.Buf(), false, xproto.Window(requestor), 0, &ev)
743+ x.wake()
744+}
745+
746+// onSelectionRequest: an X client asks selWin for the Wayland selection.
747+func (x *XWM) onSelectionRequest(ev *xturbo.Event) {
748+ e := xproto.SelectionRequestOf(ev)
749+ if uint32(e.Owner()) != x.selWin {
750+ return
751+ }
752+ sel, req, target, prop, time := uint32(e.Selection()), uint32(e.Requestor()), uint32(e.Target()), uint32(e.Property()), uint32(e.Time())
753+ k := x.selKind(sel)
754+ if k < 0 || !x.sel.st[k].ours {
755+ x.notify(req, sel, target, 0, time)
756+ return
757+ }
758+ if prop == 0 { // obsolete client
759+ prop = target
760+ }
761+ st := &x.sel.st[k]
762+ switch target {
763+ case x.atoms[atomTargets]:
764+ var list [5]uint32
765+ n := 0
766+ list[n], n = x.atoms[atomTargets], n+1
767+ if st.wlUTF8 {
768+ list[n], n = x.atoms[atomUTF8String], n+1
769+ list[n], n = x.atoms[atomText], n+1
770+ }
771+ list[n], n = x.atoms[atomString], n+1
772+ xproto.ChangeProperty(x.conn.Buf(), xproto.PropModeReplace, xproto.Window(req), xproto.Atom(prop),
773+ xproto.AtomAtom, 32, uint32(n), x.encode32(list[:n]))
774+ x.notify(req, sel, target, prop, time)
775+ return
776+ case x.atoms[atomUTF8String], x.atoms[atomText], x.atoms[atomString]:
777+ default:
778+ x.notify(req, sel, target, 0, time)
779+ return
780+ }
781+ // Choose the Wayland MIME: UTF-8 targets prefer the UTF-8 types; STRING
782+ // prefers plain text and falls back to the UTF-8 bytes unchanged.
783+ mime := ""
784+ order := [...]int{0, 2, 4, 1, 3} // utf8 types, then plain
785+ if target == x.atoms[atomString] {
786+ order = [...]int{1, 3, 0, 2, 4}
787+ }
788+ for _, i := range order {
789+ if st.wlMime[i] != "" && (target == x.atoms[atomString] || mimeTarget[i] == atomUTF8String) {
790+ mime = st.wlMime[i]
791+ break
792+ }
793+ }
794+ if mime == "" {
795+ x.notify(req, sel, target, 0, time)
796+ return
797+ }
798+ for i := range x.sel.out { // one transfer per (requestor, property)
799+ o := &x.sel.out[i]
800+ if o.state != outFree && o.requestor == req && o.property == prop {
801+ x.notify(req, sel, target, 0, time)
802+ return
803+ }
804+ }
805+ slot := -1
806+ for i := range x.sel.out {
807+ if x.sel.out[i].state == outFree {
808+ slot = i
809+ break
810+ }
811+ }
812+ if slot < 0 || x.sel.pool.n == 0 {
813+ x.log.Warn().Msg("selection: too many transfers, request refused")
814+ x.notify(req, sel, target, 0, time)
815+ return
816+ }
817+ fd := x.host.SelectionRead(k, mime)
818+ if fd < 0 {
819+ x.notify(req, sel, target, 0, time)
820+ return
821+ }
822+ x.startOut(slot, k, req, prop, target, time, fd)
823+}
824+
825+// startOut begins serving the data on fd (a non-blocking read end it now
826+// owns) to requestor.
827+func (x *XWM) startOut(slot, k int, req, prop, target, time uint32, fd int) {
828+ o := &x.sel.out[slot]
829+ o.state, o.kind, o.requestor, o.property, o.target, o.time = outActive, k, req, prop, target, time
830+ o.fd, o.buf, o.n, o.eof, o.incr, o.credit, o.notified, o.idle, o.src = fd, x.sel.pool.get(), 0, false, false, false, false, 0, nil
831+ x.selEnsureTimer()
832+ x.outRead(slot) // data may already be waiting
833+}
834+
835+// encode32 packs vals into the shared scratch.
836+func (x *XWM) encode32(vals []uint32) []byte {
837+ n := 4 * len(vals)
838+ if cap(x.scratch) < n {
839+ x.scratch = make([]byte, 0, n)
840+ }
841+ p := x.scratch[:n]
842+ for i, v := range vals {
843+ binary.LittleEndian.PutUint32(p[4*i:], v)
844+ }
845+ return p
846+}
847+
848+// outWatch registers the pipe's read end with the display.
849+func (x *XWM) outWatch(i int) {
850+ o := &x.sel.out[i]
851+ if o.src != nil {
852+ return
853+ }
854+ if x.addFD == nil {
855+ x.outAbort(i)
856+ return
857+ }
858+ src, err := x.addFD(o.fd, o.onR, nil)
859+ if err != nil {
860+ x.outAbort(i)
861+ return
862+ }
863+ o.src = src
864+}
865+
866+// outUnwatch drops read interest: the buffer is full and nothing may be read
867+// until the requestor consumed the previous chunk.
868+func (x *XWM) outUnwatch(i int) {
869+ o := &x.sel.out[i]
870+ if o.src != nil {
871+ o.src.Remove()
872+ o.src = nil
873+ }
874+}
875+
876+// outReadable is the pipe's read callback.
877+func (x *XWM) outReadable(i int) {
878+ if x.sel.out[i].state == outFree {
879+ return
880+ }
881+ x.outRead(i)
882+}
883+
884+// outRead fills the buffer from the pipe and advances the transfer.
885+func (x *XWM) outRead(i int) {
886+ o := &x.sel.out[i]
887+ buf := &x.sel.pool.bufs[o.buf]
888+ for o.n < chunk && !o.eof {
889+ n, err := unix.Read(o.fd, buf[o.n:])
890+ switch {
891+ case err == nil && n == 0:
892+ o.eof = true
893+ case err == nil:
894+ o.n += n
895+ o.idle = 0
896+ case errors.Is(err, unix.EINTR):
897+ continue
898+ case errors.Is(err, unix.EAGAIN):
899+ x.outPump(i)
900+ return
901+ default:
902+ x.outAbort(i)
903+ return
904+ }
905+ }
906+ x.outPump(i)
907+}
908+
909+// outPump sends what the state allows.
910+func (x *XWM) outPump(i int) {
911+ o := &x.sel.out[i]
912+ if o.state == outFree {
913+ return
914+ }
915+ full := o.n == chunk
916+ if !o.incr {
917+ switch {
918+ case o.eof: // whole value
919+ x.outSetProp(i, o.n)
920+ x.notify(o.requestor, x.sel.st[o.kind].atom, o.target, o.property, o.time)
921+ x.outFinish(i)
922+ case full: // does not fit one request: INCR
923+ o.incr, o.notified = true, true
924+ var v xproto.ChangeWindowAttributesValues
925+ v.SetEventMask(xproto.EventMaskPropertyChange)
926+ xproto.ChangeWindowAttributes(x.conn.Buf(), xproto.Window(o.requestor), &v)
927+ xproto.ChangeProperty(x.conn.Buf(), xproto.PropModeReplace, xproto.Window(o.requestor), xproto.Atom(o.property),
928+ xproto.Atom(x.atoms[atomIncr]), 32, 1, x.encode32([]uint32{0}))
929+ x.notify(o.requestor, x.sel.st[o.kind].atom, o.target, o.property, o.time)
930+ x.outUnwatch(i)
931+ default:
932+ x.outWatch(i)
933+ }
934+ return
935+ }
936+ if o.credit && (full || o.eof) {
937+ o.credit = false
938+ o.idle = 0
939+ x.outSetProp(i, o.n)
940+ if o.n == 0 { // the empty chunk ends the transfer
941+ x.outFinish(i)
942+ return
943+ }
944+ o.n = 0
945+ }
946+ if o.n < chunk && !o.eof {
947+ x.outWatch(i)
948+ } else {
949+ x.outUnwatch(i)
950+ }
951+}
952+
953+// outSetProp writes the first n buffered bytes as the property value.
954+func (x *XWM) outSetProp(i, n int) {
955+ o := &x.sel.out[i]
956+ seq := xproto.ChangeProperty(x.conn.Buf(), xproto.PropModeReplace, xproto.Window(o.requestor), xproto.Atom(o.property),
957+ xproto.Atom(o.target), 8, uint32(n), x.sel.pool.bufs[o.buf][:n])
958+ if seq != 0 {
959+ if err := x.conn.Expect(seq, kindSelOut, uint32(i), o.gen, 0, 0); err != nil {
960+ x.stats.RingFull++
961+ }
962+ }
963+ x.wake()
964+}
965+
966+// outFinish ends a completed transfer.
967+func (x *XWM) outFinish(i int) {
968+ o := &x.sel.out[i]
969+ if o.incr && !x.closed {
970+ var v xproto.ChangeWindowAttributesValues
971+ v.SetEventMask(0)
972+ xproto.ChangeWindowAttributes(x.conn.Buf(), xproto.Window(o.requestor), &v)
973+ x.wake()
974+ }
975+ x.outRelease(i)
976+}
977+
978+// outRelease frees the transfer's resources.
979+func (x *XWM) outRelease(i int) {
980+ o := &x.sel.out[i]
981+ x.outUnwatch(i)
982+ if o.fd >= 0 {
983+ _ = unix.Close(o.fd)
984+ }
985+ if o.buf >= 0 {
986+ x.sel.pool.put(o.buf)
987+ }
988+ o.fd, o.buf = -1, -1
989+ o.gen++
990+ o.state = outFree
991+}
992+
993+// outAbort ends a transfer early: the requestor is refused (before its
994+// notification) or released (INCR: mask dropped, property deleted).
995+func (x *XWM) outAbort(i int) {
996+ o := &x.sel.out[i]
997+ if o.state == outFree {
998+ return
999+ }
1000+ if !x.closed {
1001+ switch {
1002+ case !o.notified:
1003+ x.notify(o.requestor, x.sel.st[o.kind].atom, o.target, 0, o.time)
1004+ case o.incr:
1005+ var v xproto.ChangeWindowAttributesValues
1006+ v.SetEventMask(0)
1007+ xproto.ChangeWindowAttributes(x.conn.Buf(), xproto.Window(o.requestor), &v)
1008+ xproto.DeleteProperty(x.conn.Buf(), xproto.Window(o.requestor), xproto.Atom(o.property))
1009+ x.wake()
1010+ }
1011+ }
1012+ x.outRelease(i)
1013+}
1014+
1015+// onRequestorProperty: PropertyNotify on a window we serve by INCR.
1016+func (x *XWM) onRequestorProperty(e xproto.PropertyNotifyEvent) bool {
1017+ if e.State() != xproto.PropertyDelete {
1018+ return false
1019+ }
1020+ hit := false
1021+ for i := range x.sel.out {
1022+ o := &x.sel.out[i]
1023+ if o.state == outFree || !o.incr || o.requestor != uint32(e.Window()) || o.property != uint32(e.Atom()) {
1024+ continue
1025+ }
1026+ hit = true
1027+ o.credit = true
1028+ o.idle = 0
1029+ x.outPump(i)
1030+ }
1031+ return hit
1032+}
A internal/adapters/wayland/xwm/selection_test.go +685 -0
@@ -0,0 +1,685 @@
1+package xwm
2+
3+import (
4+ "bytes"
5+ "encoding/binary"
6+ "io"
7+ "os"
8+ "testing"
9+ "time"
10+
11+ "bnema.dev/xturbo"
12+ "bnema.dev/xturbo/xproto"
13+ "github.com/stretchr/testify/mock"
14+ "github.com/stretchr/testify/require"
15+ "golang.org/x/sys/unix"
16+)
17+
18+const peerXFixesFirstEvent = 87
19+
20+// xfixesSelection sends an XFixesSelectionNotify.
21+func (p *xpeer) xfixesSelection(owner, selection uint32) {
22+ p.event(peerXFixesFirstEvent, func(b *[32]byte) {
23+ binary.LittleEndian.PutUint32(b[4:], peerRoot)
24+ binary.LittleEndian.PutUint32(b[8:], owner)
25+ binary.LittleEndian.PutUint32(b[12:], selection)
26+ })
27+}
28+
29+// selectionNotify sends a core SelectionNotify to the requestor.
30+func (p *xpeer) selectionNotify(requestor, selection, target, property uint32) {
31+ p.event(31, func(b *[32]byte) {
32+ binary.LittleEndian.PutUint32(b[8:], requestor)
33+ binary.LittleEndian.PutUint32(b[12:], selection)
34+ binary.LittleEndian.PutUint32(b[16:], target)
35+ binary.LittleEndian.PutUint32(b[20:], property)
36+ })
37+}
38+
39+// pumpReq dispatches X events until a request matching match was sent after
40+// the first skip requests.
41+func pumpReq(t *testing.T, x *XWM, p *xpeer, skip int, match func(xpeerReq) bool) (xpeerReq, int) {
42+ t.Helper()
43+ var found xpeerReq
44+ next := skip
45+ readUntil(t, x, func() bool {
46+ x.flush()
47+ reqs := p.requests()
48+ for i := skip; i < len(reqs); i++ {
49+ if match(reqs[i]) {
50+ found, next = reqs[i], i+1
51+ return true
52+ }
53+ }
54+ return false
55+ })
56+ return found, next
57+}
58+
59+func TestSelectionBoot(t *testing.T) {
60+ x, p := bootPeer(t, nil)
61+ require.NotZero(t, x.selWin)
62+ reqs := p.requests()
63+ var created, selected int
64+ for _, r := range reqs {
65+ switch {
66+ case r.major == opCreateWindow && r.u32(4) == x.selWin:
67+ created++
68+ require.EqualValues(t, 2, binary.LittleEndian.Uint16(r.raw[22:]), "InputOnly")
69+ case r.major == 138 && r.minor == 2: // SelectSelectionInput
70+ selected++
71+ require.EqualValues(t, peerRoot, r.u32(4))
72+ require.Contains(t, []uint32{p.atom("CLIPBOARD"), p.atom("PRIMARY")}, r.u32(8))
73+ require.EqualValues(t, 7, r.u32(12))
74+ }
75+ }
76+ require.Equal(t, 1, created)
77+ require.Equal(t, 2, selected)
78+}
79+
80+func TestSelectionXOwnsAnnounces(t *testing.T) {
81+ x, p, h, _, _ := attached(t)
82+ const owner = 0x500010
83+ clip, prim := p.atom("CLIPBOARD"), p.atom("PRIMARY")
84+ tgt := p.atom("TARGETS")
85+
86+ // Owner with text targets: TARGETS probe, then the intersection.
87+ p.xfixesSelection(owner, clip)
88+ req, n := pumpReq(t, x, p, 0, func(r xpeerReq) bool { return r.major == 24 }) // ConvertSelection
89+ require.Equal(t, x.selWin, req.u32(4))
90+ require.Equal(t, clip, req.u32(8))
91+ require.Equal(t, tgt, req.u32(12))
92+ prop := req.u32(16)
93+ require.Equal(t, p.atom("_NEFERWL_TARGETS"), prop)
94+ p.setProp(x.selWin, prop, 4, 32, le32(tgt, p.atom("UTF8_STRING"), p.atom("image/png"), p.atom("TEXT")))
95+ got := make(chan []string, 8)
96+ h.EXPECT().SelectionOwned(SelClipboard, []string{"text/plain;charset=utf-8", "UTF8_STRING", "TEXT"}).Run(func(int, []string) { got <- nil }).Once()
97+ p.selectionNotify(x.selWin, clip, tgt, prop)
98+ readUntil(t, x, func() bool { return len(got) == 1 })
99+ pumpReq(t, x, p, n, func(r xpeerReq) bool { return r.major == opGetProperty && r.u32(8) == prop })
100+
101+ // Only image/png: nothing offered.
102+ p.xfixesSelection(owner, prim)
103+ pumpReq(t, x, p, n, func(r xpeerReq) bool { return r.major == 24 && r.u32(8) == prim })
104+ p.setProp(x.selWin, prop, 4, 32, le32(tgt, p.atom("image/png")))
105+ h.EXPECT().SelectionOwned(SelPrimary, []string(nil)).Run(func(int, []string) { got <- nil }).Once()
106+ p.selectionNotify(x.selWin, prim, tgt, prop)
107+ readUntil(t, x, func() bool { return len(got) == 2 })
108+
109+ // Owner None.
110+ h.EXPECT().SelectionOwned(SelClipboard, []string(nil)).Run(func(int, []string) { got <- nil }).Once()
111+ p.xfixesSelection(0, clip)
112+ readUntil(t, x, func() bool { return len(got) == 3 })
113+
114+ // Our own window: ignored (the mock fails on any host call).
115+ before := len(p.requests())
116+ p.xfixesSelection(x.selWin, clip)
117+ ev := x.Stats().Events
118+ readUntil(t, x, func() bool { return x.Stats().Events > ev })
119+ x.flush()
120+ require.Equal(t, before, len(p.requests()))
121+}
122+
123+// ---- X -> Wayland ----
124+
125+type selRig struct {
126+ x *XWM
127+ p *xpeer
128+ h *mockhost
129+ clip uint32
130+ utf8 uint32
131+ data uint32
132+ skip int
133+ timer func()
134+}
135+
136+// ownedRig attaches an XWM whose CLIPBOARD is owned by an X client offering text.
137+func ownedRig(t *testing.T) *selRig {
138+ t.Helper()
139+ x, p, h, _, _ := attached(t)
140+ r := &selRig{x: x, p: p, h: h, clip: p.atom("CLIPBOARD"), utf8: p.atom("UTF8_STRING"), data: p.atom("_NEFERWL_DATA")}
141+ h.EXPECT().After(mock.Anything, mock.Anything).Run(func(_ time.Duration, fn func()) { r.timer = fn }).Return(func() {}).Maybe()
142+ got := 0
143+ h.EXPECT().SelectionOwned(SelClipboard, mock.Anything).Run(func(int, []string) { got++ }).Once()
144+ p.xfixesSelection(0x500010, r.clip)
145+ _, n := pumpReq(t, x, p, 0, func(q xpeerReq) bool { return q.major == 24 })
146+ tgt := p.atom("TARGETS")
147+ p.setProp(x.selWin, p.atom("_NEFERWL_TARGETS"), 4, 32, le32(tgt, r.utf8))
148+ p.selectionNotify(x.selWin, r.clip, tgt, p.atom("_NEFERWL_TARGETS"))
149+ readUntil(t, x, func() bool { return got == 1 })
150+ r.skip = len(p.requests())
151+ _ = n
152+ return r
153+}
154+
155+// receive starts a paste and returns the read end of its pipe.
156+func (r *selRig) receive(t *testing.T, size int) *os.File {
157+ t.Helper()
158+ fds := make([]int, 2)
159+ require.NoError(t, unix.Pipe2(fds, unix.O_CLOEXEC))
160+ if size > 0 {
161+ _, err := unix.FcntlInt(uintptr(fds[0]), unix.F_SETPIPE_SZ, size)
162+ require.NoError(t, err)
163+ }
164+ r.x.SelectionReceive(SelClipboard, "text/plain;charset=utf-8", fds[1])
165+ r.x.flush()
166+ f := os.NewFile(uintptr(fds[0]), "pipe-r")
167+ t.Cleanup(func() { f.Close() })
168+ return f
169+}
170+
171+func (r *selRig) waitGet(t *testing.T) {
172+ t.Helper()
173+ _, n := pumpReq(t, r.x, r.p, r.skip, func(q xpeerReq) bool { return q.major == opGetProperty && q.u32(8) == r.data })
174+ r.skip = n
175+}
176+
177+func pattern(n int) []byte {
178+ b := make([]byte, n)
179+ for i := range b {
180+ b[i] = byte(i*7 + i/251)
181+ }
182+ return b
183+}
184+
185+func TestSelectionXToWaylandSmall(t *testing.T) {
186+ r := ownedRig(t)
187+ f := r.receive(t, 0)
188+ req, n := pumpReq(t, r.x, r.p, r.skip, func(q xpeerReq) bool { return q.major == 24 })
189+ require.Equal(t, r.x.selWin, req.u32(4))
190+ require.Equal(t, r.clip, req.u32(8))
191+ require.Equal(t, r.utf8, req.u32(12))
192+ require.Equal(t, r.data, req.u32(16))
193+ r.skip = n
194+ r.p.setProp(r.x.selWin, r.data, r.utf8, 8, []byte("hello clipboard"))
195+ r.p.selectionNotify(r.x.selWin, r.clip, r.utf8, r.data)
196+ r.waitGet(t)
197+ buf := make([]byte, 64)
198+ var got []byte
199+ readUntil(t, r.x, func() bool {
200+ m, _ := unix.Read(int(f.Fd()), buf[:0:0])
201+ _ = m
202+ return r.x.sel.in[0].state == inFree
203+ })
204+ m, err := f.Read(buf)
205+ require.NoError(t, err)
206+ got = buf[:m]
207+ require.Equal(t, "hello clipboard", string(got))
208+ _, ok := r.p.prop(r.x.selWin, "_NEFERWL_DATA")
209+ require.False(t, ok, "property deleted by the read")
210+ _, err = f.Read(buf)
211+ require.ErrorIs(t, err, io.EOF, "write end closed")
212+}
213+
214+func TestSelectionXToWaylandRefused(t *testing.T) {
215+ r := ownedRig(t)
216+ f := r.receive(t, 0)
217+ _, n := pumpReq(t, r.x, r.p, r.skip, func(q xpeerReq) bool { return q.major == 24 })
218+ r.skip = n
219+ r.p.selectionNotify(r.x.selWin, r.clip, r.utf8, 0)
220+ readUntil(t, r.x, func() bool { return r.x.sel.in[0].state == inFree })
221+ _, err := f.Read(make([]byte, 8))
222+ require.ErrorIs(t, err, io.EOF)
223+}
224+
225+func TestSelectionXToWaylandINCR(t *testing.T) {
226+ r := ownedRig(t)
227+ const total = 1 << 20
228+ want := pattern(total)
229+ f := r.receive(t, 1<<20)
230+ _, n := pumpReq(t, r.x, r.p, r.skip, func(q xpeerReq) bool { return q.major == 24 })
231+ r.skip = n
232+ r.p.setProp(r.x.selWin, r.data, r.p.atom("INCR"), 32, le32(total))
233+ r.p.selectionNotify(r.x.selWin, r.clip, r.utf8, r.data)
234+ r.waitGet(t) // reads and deletes the INCR marker
235+ gets := 1
236+ for off := 0; off <= total; off += chunk {
237+ end := min(off+chunk, total)
238+ r.p.setProp(r.x.selWin, r.data, r.utf8, 8, want[off:end])
239+ r.p.propertyNotify(r.x.selWin, r.data, false)
240+ r.waitGet(t)
241+ gets++
242+ }
243+ readUntil(t, r.x, func() bool { return r.x.sel.in[0].state == inFree })
244+ got, err := io.ReadAll(f)
245+ require.NoError(t, err)
246+ require.True(t, bytes.Equal(want, got), "byte-exact, got %d", len(got))
247+ require.Equal(t, 1+total/chunk+1, gets, "marker, 16 chunks, empty terminator")
248+}
249+
250+// A reader that does not drain: no further GetProperty until the pipe has room.
251+func TestSelectionXToWaylandBackpressure(t *testing.T) {
252+ r := ownedRig(t)
253+ src := newMockfdSource(t)
254+ var onW func()
255+ r.x.addFD = func(_ int, _, w func()) (fdSource, error) { onW = w; return src, nil }
256+ src.EXPECT().SetWritable(true).Return(nil).Once()
257+ src.EXPECT().SetWritable(false).Return(nil).Once()
258+ src.EXPECT().Remove().Return().Once()
259+ f := r.receive(t, 0) // default 64 KiB pipe
260+ _, n := pumpReq(t, r.x, r.p, r.skip, func(q xpeerReq) bool { return q.major == 24 })
261+ r.skip = n
262+ r.p.setProp(r.x.selWin, r.data, r.p.atom("INCR"), 32, le32(3*chunk))
263+ r.p.selectionNotify(r.x.selWin, r.clip, r.utf8, r.data)
264+ r.waitGet(t)
265+ want := pattern(3 * chunk)
266+ chunkN := func(k int) {
267+ r.p.setProp(r.x.selWin, r.data, r.utf8, 8, want[k*chunk:(k+1)*chunk])
268+ r.p.propertyNotify(r.x.selWin, r.data, false)
269+ }
270+ chunkN(0) // fills the pipe exactly
271+ r.waitGet(t)
272+ readUntil(t, r.x, func() bool { return r.x.sel.in[0].state == inWaitIncr })
273+ chunkN(1) // nobody reads: EAGAIN, the buffer stays pending
274+ r.waitGet(t)
275+ readUntil(t, r.x, func() bool { return r.x.sel.in[0].state == inWriting })
276+ require.NotNil(t, onW)
277+
278+ gets := getProps(r.p, 0, r.x.selWin)
279+ chunkN(2) // announced while a buffer is pending
280+ ev := r.x.Stats().Events
281+ readUntil(t, r.x, func() bool { return r.x.Stats().Events > ev })
282+ r.x.flush()
283+ require.Equal(t, gets, getProps(r.p, 0, r.x.selWin), "no GetProperty while a buffer is pending")
284+
285+ got := make([]byte, 0, 3*chunk)
286+ buf := make([]byte, chunk)
287+ m, err := f.Read(buf) // the reader wakes: room again
288+ require.NoError(t, err)
289+ got = append(got, buf[:m]...)
290+ onW()
291+ require.Equal(t, inReading, r.x.sel.in[0].state, "the pending announcement is served once drained")
292+ r.waitGet(t)
293+ _ = got
294+ r.x.selClose()
295+}
296+
297+func TestSelectionTimeouts(t *testing.T) {
298+ r := ownedRig(t)
299+ f := r.receive(t, 0)
300+ _, n := pumpReq(t, r.x, r.p, r.skip, func(q xpeerReq) bool { return q.major == 24 })
301+ r.skip = n
302+ require.NotNil(t, r.timer)
303+ // X stays silent after ConvertSelection: nine ticks keep it alive, the tenth aborts.
304+ for i := 0; i < xIdleMax-1; i++ {
305+ fn := r.timer
306+ fn()
307+ require.Equal(t, inConverting, r.x.sel.in[0].state, i)
308+ }
309+ r.timer()
310+ require.Equal(t, inFree, r.x.sel.in[0].state)
311+ _, err := f.Read(make([]byte, 8))
312+ require.ErrorIs(t, err, io.EOF, "fd closed")
313+ pumpReq(t, r.x, r.p, r.skip, func(q xpeerReq) bool { return q.major == opDeleteProperty && q.u32(8) == r.data })
314+ require.Equal(t, nXfer, r.x.sel.pool.n)
315+}
316+
317+func TestSelectionPoolExhausted(t *testing.T) {
318+ r := ownedRig(t)
319+ var files []*os.File
320+ for i := 0; i < nXfer; i++ {
321+ files = append(files, r.receive(t, 0))
322+ }
323+ fifth := r.receive(t, 0)
324+ _, err := fifth.Read(make([]byte, 8))
325+ require.ErrorIs(t, err, io.EOF, "the fifth paste is refused with its pipe closed")
326+ for i := range r.x.sel.in {
327+ require.NotEqual(t, inFree, r.x.sel.in[i].state, i)
328+ }
329+ _ = files
330+ r.x.selClose()
331+ for i := range r.x.sel.in {
332+ require.Equal(t, inFree, r.x.sel.in[i].state, i)
333+ }
334+}
335+
336+// allocRig is a rig whose peer sinks requests and whose timer seam is inert.
337+func allocRig(t *testing.T) *selRig {
338+ r := ownedRig(t)
339+ sinkPeer(t, r.x, r.p)
340+ r.x.after = func(time.Duration, func()) func() { return func() {} }
341+ r.x.sel.timerOn = true // no timer re-arming in the measured loop
342+ return r
343+}
344+
345+func dataReply(r *selRig, typ uint32, payload []byte) *xturbo.Reply {
346+ raw := make([]byte, 32+(len(payload)+3)&^3)
347+ raw[0], raw[1] = 1, 8
348+ binary.LittleEndian.PutUint32(raw[8:], typ)
349+ binary.LittleEndian.PutUint32(raw[16:], uint32(len(payload)))
350+ copy(raw[32:], payload)
351+ return &xturbo.Reply{Kind: kindSelData, Raw: raw}
352+}
353+
354+func TestSelectionCopyAllocations(t *testing.T) {
355+ r := allocRig(t)
356+ x := r.x
357+ fds := make([]int, 2)
358+ require.NoError(t, unix.Pipe2(fds, unix.O_CLOEXEC))
359+ t.Cleanup(func() { unix.Close(fds[0]); unix.Close(fds[1]) })
360+ payload := pattern(4096)
361+ rep := dataReply(r, r.utf8, payload)
362+ var note xturbo.Event
363+ note.Kind = xproto.KindSelectionNotify
364+ binary.LittleEndian.PutUint32(note.Raw[8:], x.selWin)
365+ binary.LittleEndian.PutUint32(note.Raw[12:], r.clip)
366+ binary.LittleEndian.PutUint32(note.Raw[16:], r.utf8)
367+ binary.LittleEndian.PutUint32(note.Raw[20:], r.data)
368+ sink := make([]byte, 8192)
369+ mime := textMimes[0]
370+ round := func() {
371+ fd, err := unix.FcntlInt(uintptr(fds[1]), unix.F_DUPFD_CLOEXEC, 0)
372+ if err != nil {
373+ t.Fatal("dup")
374+ }
375+ x.SelectionReceive(SelClipboard, mime, fd)
376+ x.onSelectionNotify(&note)
377+ rep.Args = [4]uint32{0, x.sel.in[0].gen}
378+ x.onSelDataReply(rep)
379+ if m, err := unix.Read(fds[0], sink); err != nil || m != 4096 {
380+ t.Fatal("read")
381+ }
382+ x.posted = false
383+ x.flush()
384+ }
385+ round()
386+ require.Zero(t, testing.AllocsPerRun(100, round))
387+}
388+
389+func TestSelectionINCRChunkAllocations(t *testing.T) {
390+ r := allocRig(t)
391+ x := r.x
392+ fds := make([]int, 2)
393+ require.NoError(t, unix.Pipe2(fds, unix.O_CLOEXEC))
394+ t.Cleanup(func() { unix.Close(fds[0]); unix.Close(fds[1]) })
395+ x.SelectionReceive(SelClipboard, textMimes[0], fds[1])
396+ var note xturbo.Event
397+ note.Kind = xproto.KindSelectionNotify
398+ binary.LittleEndian.PutUint32(note.Raw[8:], x.selWin)
399+ binary.LittleEndian.PutUint32(note.Raw[12:], r.clip)
400+ binary.LittleEndian.PutUint32(note.Raw[16:], r.utf8)
401+ binary.LittleEndian.PutUint32(note.Raw[20:], r.data)
402+ x.onSelectionNotify(&note)
403+ x.onSelDataReply(dataReply(r, r.p.atom("INCR"), le32(1<<20)))
404+ require.Equal(t, inWaitIncr, x.sel.in[0].state)
405+ rep := dataReply(r, r.utf8, pattern(chunk))
406+ var pn xturbo.Event
407+ pn.Kind = xproto.KindPropertyNotify
408+ binary.LittleEndian.PutUint32(pn.Raw[4:], x.selWin)
409+ binary.LittleEndian.PutUint32(pn.Raw[8:], r.data)
410+ sink := make([]byte, chunk)
411+ step := func() {
412+ x.onSelProperty(&pn)
413+ rep.Args = [4]uint32{0, x.sel.in[0].gen}
414+ x.onSelDataReply(rep)
415+ if m, err := unix.Read(fds[0], sink); err != nil || m != chunk {
416+ t.Fatal("read")
417+ }
418+ x.posted = false
419+ x.flush()
420+ }
421+ step()
422+ require.Zero(t, testing.AllocsPerRun(100, step))
423+ require.Equal(t, inWaitIncr, x.sel.in[0].state)
424+}
425+
426+// ---- Wayland -> X ----
427+
428+const reqWin = 0x500020
429+
430+func (p *xpeer) selectionRequest(owner, requestor, selection, target, property uint32) {
431+ p.event(30, func(b *[32]byte) {
432+ binary.LittleEndian.PutUint32(b[8:], owner)
433+ binary.LittleEndian.PutUint32(b[12:], requestor)
434+ binary.LittleEndian.PutUint32(b[16:], selection)
435+ binary.LittleEndian.PutUint32(b[20:], target)
436+ binary.LittleEndian.PutUint32(b[24:], property)
437+ })
438+}
439+
440+func (p *xpeer) selectionClear(owner, selection uint32) {
441+ p.event(29, func(b *[32]byte) {
442+ binary.LittleEndian.PutUint32(b[8:], owner)
443+ binary.LittleEndian.PutUint32(b[12:], selection)
444+ })
445+}
446+
447+// sentNotify returns the property of the SelectionNotify SendEvent after skip.
448+func sentNotify(t *testing.T, r *selRig) (property uint32) {
449+ t.Helper()
450+ req, n := pumpReq(t, r.x, r.p, r.skip, func(q xpeerReq) bool { return q.major == opSendEvent && q.raw[12] == 31 })
451+ r.skip = n
452+ require.EqualValues(t, reqWin, req.u32(4))
453+ require.Equal(t, r.clip, binary.LittleEndian.Uint32(req.raw[12+12:]))
454+ return binary.LittleEndian.Uint32(req.raw[12+20:])
455+}
456+
457+// ownedByWayland attaches an XWM and gives CLIPBOARD to a Wayland client offering mimes.
458+func ownedByWayland(t *testing.T, mimes ...string) *selRig {
459+ t.Helper()
460+ x, p, h, _, _ := attached(t)
461+ r := &selRig{x: x, p: p, h: h, clip: p.atom("CLIPBOARD"), utf8: p.atom("UTF8_STRING"), data: p.atom("_NEFERWL_DATA")}
462+ h.EXPECT().After(mock.Anything, mock.Anything).Run(func(_ time.Duration, fn func()) { r.timer = fn }).Return(func() {}).Maybe()
463+ x.WaylandSelection(SelClipboard, mimes)
464+ x.flush()
465+ req, n := pumpReq(t, x, p, 0, func(q xpeerReq) bool { return q.major == opSetSelectionOwner && q.u32(8) == r.clip })
466+ require.Equal(t, x.selWin, req.u32(4))
467+ r.skip = n
468+ return r
469+}
470+
471+// serve queues a SelectionRequest; SelectionRead hands out the read end of a
472+// pipe whose write end is returned.
473+func (r *selRig) serve(t *testing.T, target uint32) (w *os.File) {
474+ t.Helper()
475+ fds := make([]int, 2)
476+ require.NoError(t, unix.Pipe2(fds, unix.O_CLOEXEC|unix.O_NONBLOCK))
477+ r.h.EXPECT().SelectionRead(SelClipboard, mock.Anything).Return(fds[0]).Once()
478+ r.p.selectionRequest(r.x.selWin, reqWin, r.clip, target, r.data)
479+ w = os.NewFile(uintptr(fds[1]), "pipe-w")
480+ t.Cleanup(func() { w.Close() })
481+ return w
482+}
483+
484+func TestSelectionWaylandToXTargets(t *testing.T) {
485+ r := ownedByWayland(t, "text/plain")
486+ r.p.selectionRequest(r.x.selWin, reqWin, r.clip, r.p.atom("TARGETS"), r.data)
487+ require.Equal(t, r.data, sentNotify(t, r))
488+ v, ok := r.p.prop(reqWin, "_NEFERWL_DATA")
489+ require.True(t, ok)
490+ require.Equal(t, []uint32{r.p.atom("TARGETS"), r.p.atom("STRING")}, atomsOf(v), "no UTF8 target for text/plain only")
491+ r.p.selectionRequest(r.x.selWin, reqWin, r.clip, r.p.atom("image/png"), r.data)
492+ require.Zero(t, sentNotify(t, r), "unknown target refused")
493+ // UTF8_STRING is not offered by a text/plain-only source, but STRING reads it.
494+ r.p.selectionRequest(r.x.selWin, reqWin, r.clip, r.utf8, r.data)
495+ require.Zero(t, sentNotify(t, r), "no UTF-8 text offered")
496+}
497+
498+func TestSelectionWaylandToXSmall(t *testing.T) {
499+ r := ownedByWayland(t, "text/plain;charset=utf-8")
500+ w := r.serve(t, r.utf8)
501+ data := pattern(4096)
502+ _, err := w.Write(data)
503+ require.NoError(t, err)
504+ require.NoError(t, w.Close())
505+ require.Equal(t, r.data, sentNotify(t, r))
506+ v, ok := r.p.prop(reqWin, "_NEFERWL_DATA")
507+ require.True(t, ok)
508+ require.Equal(t, r.utf8, v.typ)
509+ require.True(t, bytes.Equal(data, v.data))
510+ require.Equal(t, nXfer, r.x.sel.pool.n)
511+}
512+
513+func TestSelectionWaylandToXINCR(t *testing.T) {
514+ r := ownedByWayland(t, "text/plain;charset=utf-8")
515+ src := newMockfdSource(t)
516+ var onR func()
517+ removes := 0
518+ r.x.addFD = func(_ int, rd, _ func()) (fdSource, error) { onR = rd; return src, nil }
519+ src.EXPECT().Remove().Run(func() { removes++ }).Return().Maybe()
520+ const total = 1<<20 + 123
521+ data := pattern(total)
522+ w := r.serve(t, r.utf8)
523+ require.NoError(t, unix.SetNonblock(int(w.Fd()), false))
524+ go func() { _, _ = w.Write(data); w.Close() }()
525+
526+ // The first fill is a whole chunk: INCR is announced.
527+ var got []byte
528+ deadline := time.Now().Add(5 * time.Second)
529+ for !r.x.sel.out[0].incr {
530+ require.True(t, time.Now().Before(deadline), "INCR never announced")
531+ r.x.onReadable()
532+ if onR != nil && r.x.sel.out[0].state == outActive {
533+ onR()
534+ }
535+ time.Sleep(time.Millisecond)
536+ }
537+ require.Equal(t, r.data, sentNotify(t, r))
538+ v, _ := r.p.prop(reqWin, "_NEFERWL_DATA")
539+ require.Equal(t, r.p.atom("INCR"), v.typ)
540+ mask, _ := pumpReq(t, r.x, r.p, 0, func(q xpeerReq) bool {
541+ return q.major == opChangeWindowAttributes && q.u32(4) == reqWin && q.u32(12) == uint32(xproto.EventMaskPropertyChange)
542+ })
543+ require.NotZero(t, mask.raw)
544+
545+ chunks := 0
546+ for {
547+ // The requestor deletes the property: the next chunk goes out.
548+ r.p.propertyNotify(reqWin, r.data, true)
549+ before := len(r.p.requests())
550+ if onR != nil {
551+ time.Sleep(time.Millisecond)
552+ }
553+ var cp xpeerProp
554+ readUntil(t, r.x, func() bool {
555+ if onR != nil && r.x.sel.out[0].state != outFree && r.x.sel.out[0].n < chunk && !r.x.sel.out[0].eof {
556+ onR()
557+ }
558+ r.x.flush()
559+ for _, q := range r.p.requests()[before:] {
560+ if q.major == opChangeProperty && q.u32(4) == reqWin {
561+ return true
562+ }
563+ }
564+ return false
565+ })
566+ cp, _ = r.p.prop(reqWin, "_NEFERWL_DATA")
567+ chunks++
568+ if len(cp.data) == 0 {
569+ break
570+ }
571+ require.Equal(t, r.utf8, cp.typ)
572+ got = append(got, cp.data...)
573+ }
574+ require.True(t, bytes.Equal(data, got), "byte-exact: %d of %d", len(got), total)
575+ require.Equal(t, total/chunk+2, chunks, "16 full chunks, the tail, then the empty terminator")
576+ readUntil(t, r.x, func() bool { return r.x.sel.out[0].state == outFree })
577+ // The mask is removed at the end.
578+ reqs := r.p.requests()
579+ last := reqs[len(reqs)-1]
580+ for i := len(reqs) - 1; i >= 0; i-- {
581+ if reqs[i].major == opChangeWindowAttributes && reqs[i].u32(4) == reqWin {
582+ last = reqs[i]
583+ break
584+ }
585+ }
586+ require.Zero(t, last.u32(12), "event mask dropped")
587+ require.Equal(t, nXfer, r.x.sel.pool.n)
588+}
589+
590+func TestSelectionWaylandToXTimeoutAndClear(t *testing.T) {
591+ r := ownedByWayland(t, "text/plain;charset=utf-8")
592+ src := newMockfdSource(t)
593+ src.EXPECT().Remove().Return().Maybe()
594+ r.x.addFD = func(_ int, _, _ func()) (fdSource, error) { return src, nil }
595+ w := r.serve(t, r.utf8)
596+ _, err := w.Write(pattern(chunk)) // a full chunk: INCR
597+ require.NoError(t, err)
598+ readUntil(t, r.x, func() bool { return r.x.sel.out[0].incr })
599+ require.Equal(t, r.data, sentNotify(t, r))
600+ require.NotNil(t, r.timer)
601+ for i := 0; i < xIdleMax; i++ {
602+ require.Equal(t, outActive, r.x.sel.out[0].state, i)
603+ r.timer()
604+ }
605+ require.Equal(t, outFree, r.x.sel.out[0].state, "no Deleted for 10 s aborts")
606+ pumpReq(t, r.x, r.p, r.skip, func(q xpeerReq) bool { return q.major == opDeleteProperty && q.u32(4) == reqWin })
607+
608+ // SelectionClear aborts a running transfer and refuses further requests.
609+ w2 := r.serve(t, r.utf8)
610+ _, err = w2.Write(pattern(chunk))
611+ require.NoError(t, err)
612+ readUntil(t, r.x, func() bool { return r.x.sel.out[0].state == outActive })
613+ r.p.selectionClear(r.x.selWin, r.clip)
614+ readUntil(t, r.x, func() bool { return r.x.sel.out[0].state == outFree })
615+ r.p.selectionRequest(r.x.selWin, reqWin, r.clip, r.utf8, r.data)
616+ require.Equal(t, r.data, sentNotify(t, r), "INCR announcement of the aborted transfer")
617+ require.Zero(t, sentNotify(t, r), "request after the clear is refused")
618+}
619+
620+// Replacing the Wayland selection mid-transfer aborts it; nil releases X ownership.
621+func TestSelectionClearAndRace(t *testing.T) {
622+ r := ownedByWayland(t, "text/plain;charset=utf-8")
623+ src := newMockfdSource(t)
624+ src.EXPECT().Remove().Return().Maybe()
625+ r.x.addFD = func(_ int, _, _ func()) (fdSource, error) { return src, nil }
626+ w := r.serve(t, r.utf8)
627+ _, err := w.Write(pattern(chunk))
628+ require.NoError(t, err)
629+ readUntil(t, r.x, func() bool { return r.x.sel.out[0].incr })
630+ r.x.WaylandSelection(SelClipboard, []string{"text/plain"})
631+ require.Equal(t, outFree, r.x.sel.out[0].state)
632+ r.x.WaylandSelection(SelClipboard, nil) // protected or cleared
633+ r.x.flush()
634+ req, _ := pumpReq(t, r.x, r.p, r.skip, func(q xpeerReq) bool { return q.major == opSetSelectionOwner && q.u32(4) == 0 })
635+ require.Equal(t, r.clip, req.u32(8), "ownership released")
636+ require.False(t, r.x.sel.st[SelClipboard].ours)
637+}
638+
639+func TestSelectionCopyAllocationsWaylandToX(t *testing.T) {
640+ r := ownedByWayland(t, "text/plain;charset=utf-8")
641+ x := r.x
642+ sinkPeer(t, x, r.p)
643+ x.after = func(time.Duration, func()) func() { return func() {} }
644+ x.sel.timerOn = true
645+ data := pattern(4096)
646+ var ev xturbo.Event
647+ ev.Kind = xproto.KindSelectionRequest
648+ binary.LittleEndian.PutUint32(ev.Raw[8:], x.selWin)
649+ binary.LittleEndian.PutUint32(ev.Raw[12:], reqWin)
650+ binary.LittleEndian.PutUint32(ev.Raw[16:], r.clip)
651+ binary.LittleEndian.PutUint32(ev.Raw[20:], r.utf8)
652+ binary.LittleEndian.PutUint32(ev.Raw[24:], r.data)
653+ fds := make([]int, 2)
654+ round := func() {
655+ if unix.Pipe2(fds, unix.O_CLOEXEC|unix.O_NONBLOCK) != nil {
656+ t.Fatal("pipe")
657+ }
658+ if _, err := unix.Write(fds[1], data); err != nil {
659+ t.Fatal("write")
660+ }
661+ unix.Close(fds[1])
662+ x.host.(*mockhost).ExpectedCalls = nil
663+ x.onSelectionRequest(&ev)
664+ x.posted = false
665+ x.flush()
666+ }
667+ _ = round
668+ // The host mock's matching is not allocation free, so the host call is replaced.
669+ x.sel.st[SelClipboard].wlMime = [len(textMimes)]string{"text/plain;charset=utf-8"}
670+ allocs := testing.AllocsPerRun(100, func() {
671+ if unix.Pipe2(fds, unix.O_CLOEXEC|unix.O_NONBLOCK) != nil {
672+ t.Fatal("pipe")
673+ }
674+ if _, err := unix.Write(fds[1], data); err != nil {
675+ t.Fatal("write")
676+ }
677+ unix.Close(fds[1])
678+ x.startOut(0, SelClipboard, reqWin, r.data, r.utf8, 0, fds[0])
679+ x.posted = false
680+ x.flush()
681+ })
682+ // Pipe2 itself does not allocate; the measured path is read + ChangeProperty + SendEvent.
683+ require.Zero(t, allocs)
684+ require.Equal(t, outFree, x.sel.out[0].state)
685+}
M internal/adapters/wayland/xwm/testdata/streams/property_unchanged.hex +949 -949
@@ -1,950 +1,950 @@
1-1c00660001005000f30300000000000000000000000000000000000000000000
2-0108670003000000ef0300000000000009000000000000000000000000000000
3-6e6574207469746c650000001c00670001005000f30300000000000000000000
4-0000000000000000000000000108680003000000ef0300000000000009000000
5-0000000000000000000000006e6574207469746c650000001c00680001005000
6-f303000000000000000000000000000000000000000000000108690003000000
7-ef03000000000000090000000000000000000000000000006e6574207469746c
8-650000001c00690001005000f303000000000000000000000000000000000000
9-0000000001086a0003000000ef03000000000000090000000000000000000000
10-000000006e6574207469746c650000001c006a0001005000f303000000000000
11-0000000000000000000000000000000001086b0003000000ef03000000000000
12-090000000000000000000000000000006e6574207469746c650000001c006b00
13-01005000f3030000000000000000000000000000000000000000000001086c00
14-03000000ef03000000000000090000000000000000000000000000006e657420
15-7469746c650000001c006c0001005000f3030000000000000000000000000000
16-000000000000000001086d0003000000ef030000000000000900000000000000
17-00000000000000006e6574207469746c650000001c006d0001005000f3030000
18-000000000000000000000000000000000000000001086e0003000000ef030000
19-00000000090000000000000000000000000000006e6574207469746c65000000
20-1c006e0001005000f30300000000000000000000000000000000000000000000
21-01086f0003000000ef0300000000000009000000000000000000000000000000
22-6e6574207469746c650000001c006f0001005000f30300000000000000000000
23-0000000000000000000000000108700003000000ef0300000000000009000000
24-0000000000000000000000006e6574207469746c650000001c00700001005000
25-f303000000000000000000000000000000000000000000000108710003000000
26-ef03000000000000090000000000000000000000000000006e6574207469746c
27-650000001c00710001005000f303000000000000000000000000000000000000
28-000000000108720003000000ef03000000000000090000000000000000000000
29-000000006e6574207469746c650000001c00720001005000f303000000000000
30-000000000000000000000000000000000108730003000000ef03000000000000
31-090000000000000000000000000000006e6574207469746c650000001c007300
32-01005000f3030000000000000000000000000000000000000000000001087400
33-03000000ef03000000000000090000000000000000000000000000006e657420
34-7469746c650000001c00740001005000f3030000000000000000000000000000
35-00000000000000000108750003000000ef030000000000000900000000000000
36-00000000000000006e6574207469746c650000001c00750001005000f3030000
37-00000000000000000000000000000000000000000108760003000000ef030000
38-00000000090000000000000000000000000000006e6574207469746c65000000
39-1c00760001005000f30300000000000000000000000000000000000000000000
40-0108770003000000ef0300000000000009000000000000000000000000000000
41-6e6574207469746c650000001c00770001005000f30300000000000000000000
42-0000000000000000000000000108780003000000ef0300000000000009000000
43-0000000000000000000000006e6574207469746c650000001c00780001005000
44-f303000000000000000000000000000000000000000000000108790003000000
45-ef03000000000000090000000000000000000000000000006e6574207469746c
46-650000001c00790001005000f303000000000000000000000000000000000000
47-0000000001087a0003000000ef03000000000000090000000000000000000000
48-000000006e6574207469746c650000001c007a0001005000f303000000000000
49-0000000000000000000000000000000001087b0003000000ef03000000000000
50-090000000000000000000000000000006e6574207469746c650000001c007b00
51-01005000f3030000000000000000000000000000000000000000000001087c00
52-03000000ef03000000000000090000000000000000000000000000006e657420
53-7469746c650000001c007c0001005000f3030000000000000000000000000000
54-000000000000000001087d0003000000ef030000000000000900000000000000
55-00000000000000006e6574207469746c650000001c007d0001005000f3030000
56-000000000000000000000000000000000000000001087e0003000000ef030000
57-00000000090000000000000000000000000000006e6574207469746c65000000
58-1c007e0001005000f30300000000000000000000000000000000000000000000
59-01087f0003000000ef0300000000000009000000000000000000000000000000
60-6e6574207469746c650000001c007f0001005000f30300000000000000000000
61-0000000000000000000000000108800003000000ef0300000000000009000000
62-0000000000000000000000006e6574207469746c650000001c00800001005000
63-f303000000000000000000000000000000000000000000000108810003000000
64-ef03000000000000090000000000000000000000000000006e6574207469746c
65-650000001c00810001005000f303000000000000000000000000000000000000
66-000000000108820003000000ef03000000000000090000000000000000000000
67-000000006e6574207469746c650000001c00820001005000f303000000000000
68-000000000000000000000000000000000108830003000000ef03000000000000
69-090000000000000000000000000000006e6574207469746c650000001c008300
70-01005000f3030000000000000000000000000000000000000000000001088400
71-03000000ef03000000000000090000000000000000000000000000006e657420
72-7469746c650000001c00840001005000f3030000000000000000000000000000
73-00000000000000000108850003000000ef030000000000000900000000000000
74-00000000000000006e6574207469746c650000001c00850001005000f3030000
75-00000000000000000000000000000000000000000108860003000000ef030000
76-00000000090000000000000000000000000000006e6574207469746c65000000
77-1c00860001005000f30300000000000000000000000000000000000000000000
78-0108870003000000ef0300000000000009000000000000000000000000000000
79-6e6574207469746c650000001c00870001005000f30300000000000000000000
80-0000000000000000000000000108880003000000ef0300000000000009000000
81-0000000000000000000000006e6574207469746c650000001c00880001005000
82-f303000000000000000000000000000000000000000000000108890003000000
83-ef03000000000000090000000000000000000000000000006e6574207469746c
84-650000001c00890001005000f303000000000000000000000000000000000000
85-0000000001088a0003000000ef03000000000000090000000000000000000000
86-000000006e6574207469746c650000001c008a0001005000f303000000000000
87-0000000000000000000000000000000001088b0003000000ef03000000000000
88-090000000000000000000000000000006e6574207469746c650000001c008b00
89-01005000f3030000000000000000000000000000000000000000000001088c00
90-03000000ef03000000000000090000000000000000000000000000006e657420
91-7469746c650000001c008c0001005000f3030000000000000000000000000000
92-000000000000000001088d0003000000ef030000000000000900000000000000
93-00000000000000006e6574207469746c650000001c008d0001005000f3030000
94-000000000000000000000000000000000000000001088e0003000000ef030000
95-00000000090000000000000000000000000000006e6574207469746c65000000
96-1c008e0001005000f30300000000000000000000000000000000000000000000
97-01088f0003000000ef0300000000000009000000000000000000000000000000
98-6e6574207469746c650000001c008f0001005000f30300000000000000000000
99-0000000000000000000000000108900003000000ef0300000000000009000000
100-0000000000000000000000006e6574207469746c650000001c00900001005000
101-f303000000000000000000000000000000000000000000000108910003000000
102-ef03000000000000090000000000000000000000000000006e6574207469746c
103-650000001c00910001005000f303000000000000000000000000000000000000
104-000000000108920003000000ef03000000000000090000000000000000000000
105-000000006e6574207469746c650000001c00920001005000f303000000000000
106-000000000000000000000000000000000108930003000000ef03000000000000
107-090000000000000000000000000000006e6574207469746c650000001c009300
108-01005000f3030000000000000000000000000000000000000000000001089400
109-03000000ef03000000000000090000000000000000000000000000006e657420
110-7469746c650000001c00940001005000f3030000000000000000000000000000
111-00000000000000000108950003000000ef030000000000000900000000000000
112-00000000000000006e6574207469746c650000001c00950001005000f3030000
113-00000000000000000000000000000000000000000108960003000000ef030000
114-00000000090000000000000000000000000000006e6574207469746c65000000
115-1c00960001005000f30300000000000000000000000000000000000000000000
116-0108970003000000ef0300000000000009000000000000000000000000000000
117-6e6574207469746c650000001c00970001005000f30300000000000000000000
118-0000000000000000000000000108980003000000ef0300000000000009000000
119-0000000000000000000000006e6574207469746c650000001c00980001005000
120-f303000000000000000000000000000000000000000000000108990003000000
121-ef03000000000000090000000000000000000000000000006e6574207469746c
122-650000001c00990001005000f303000000000000000000000000000000000000
123-0000000001089a0003000000ef03000000000000090000000000000000000000
124-000000006e6574207469746c650000001c009a0001005000f303000000000000
125-0000000000000000000000000000000001089b0003000000ef03000000000000
126-090000000000000000000000000000006e6574207469746c650000001c009b00
127-01005000f3030000000000000000000000000000000000000000000001089c00
128-03000000ef03000000000000090000000000000000000000000000006e657420
129-7469746c650000001c009c0001005000f3030000000000000000000000000000
130-000000000000000001089d0003000000ef030000000000000900000000000000
131-00000000000000006e6574207469746c650000001c009d0001005000f3030000
132-000000000000000000000000000000000000000001089e0003000000ef030000
133-00000000090000000000000000000000000000006e6574207469746c65000000
134-1c009e0001005000f30300000000000000000000000000000000000000000000
135-01089f0003000000ef0300000000000009000000000000000000000000000000
136-6e6574207469746c650000001c009f0001005000f30300000000000000000000
137-0000000000000000000000000108a00003000000ef0300000000000009000000
138-0000000000000000000000006e6574207469746c650000001c00a00001005000
139-f303000000000000000000000000000000000000000000000108a10003000000
140-ef03000000000000090000000000000000000000000000006e6574207469746c
141-650000001c00a10001005000f303000000000000000000000000000000000000
142-000000000108a20003000000ef03000000000000090000000000000000000000
143-000000006e6574207469746c650000001c00a20001005000f303000000000000
144-000000000000000000000000000000000108a30003000000ef03000000000000
145-090000000000000000000000000000006e6574207469746c650000001c00a300
146-01005000f303000000000000000000000000000000000000000000000108a400
147-03000000ef03000000000000090000000000000000000000000000006e657420
148-7469746c650000001c00a40001005000f3030000000000000000000000000000
149-00000000000000000108a50003000000ef030000000000000900000000000000
150-00000000000000006e6574207469746c650000001c00a50001005000f3030000
151-00000000000000000000000000000000000000000108a60003000000ef030000
152-00000000090000000000000000000000000000006e6574207469746c65000000
153-1c00a60001005000f30300000000000000000000000000000000000000000000
154-0108a70003000000ef0300000000000009000000000000000000000000000000
155-6e6574207469746c650000001c00a70001005000f30300000000000000000000
156-0000000000000000000000000108a80003000000ef0300000000000009000000
157-0000000000000000000000006e6574207469746c650000001c00a80001005000
158-f303000000000000000000000000000000000000000000000108a90003000000
159-ef03000000000000090000000000000000000000000000006e6574207469746c
160-650000001c00a90001005000f303000000000000000000000000000000000000
161-000000000108aa0003000000ef03000000000000090000000000000000000000
162-000000006e6574207469746c650000001c00aa0001005000f303000000000000
163-000000000000000000000000000000000108ab0003000000ef03000000000000
164-090000000000000000000000000000006e6574207469746c650000001c00ab00
165-01005000f303000000000000000000000000000000000000000000000108ac00
166-03000000ef03000000000000090000000000000000000000000000006e657420
167-7469746c650000001c00ac0001005000f3030000000000000000000000000000
168-00000000000000000108ad0003000000ef030000000000000900000000000000
169-00000000000000006e6574207469746c650000001c00ad0001005000f3030000
170-00000000000000000000000000000000000000000108ae0003000000ef030000
171-00000000090000000000000000000000000000006e6574207469746c65000000
172-1c00ae0001005000f30300000000000000000000000000000000000000000000
173-0108af0003000000ef0300000000000009000000000000000000000000000000
174-6e6574207469746c650000001c00af0001005000f30300000000000000000000
175-0000000000000000000000000108b00003000000ef0300000000000009000000
176-0000000000000000000000006e6574207469746c650000001c00b00001005000
177-f303000000000000000000000000000000000000000000000108b10003000000
178-ef03000000000000090000000000000000000000000000006e6574207469746c
179-650000001c00b10001005000f303000000000000000000000000000000000000
180-000000000108b20003000000ef03000000000000090000000000000000000000
181-000000006e6574207469746c650000001c00b20001005000f303000000000000
182-000000000000000000000000000000000108b30003000000ef03000000000000
183-090000000000000000000000000000006e6574207469746c650000001c00b300
184-01005000f303000000000000000000000000000000000000000000000108b400
185-03000000ef03000000000000090000000000000000000000000000006e657420
186-7469746c650000001c00b40001005000f3030000000000000000000000000000
187-00000000000000000108b50003000000ef030000000000000900000000000000
188-00000000000000006e6574207469746c650000001c00b50001005000f3030000
189-00000000000000000000000000000000000000000108b60003000000ef030000
190-00000000090000000000000000000000000000006e6574207469746c65000000
191-1c00b60001005000f30300000000000000000000000000000000000000000000
192-0108b70003000000ef0300000000000009000000000000000000000000000000
193-6e6574207469746c650000001c00b70001005000f30300000000000000000000
194-0000000000000000000000000108b80003000000ef0300000000000009000000
195-0000000000000000000000006e6574207469746c650000001c00b80001005000
196-f303000000000000000000000000000000000000000000000108b90003000000
197-ef03000000000000090000000000000000000000000000006e6574207469746c
198-650000001c00b90001005000f303000000000000000000000000000000000000
199-000000000108ba0003000000ef03000000000000090000000000000000000000
200-000000006e6574207469746c650000001c00ba0001005000f303000000000000
201-000000000000000000000000000000000108bb0003000000ef03000000000000
202-090000000000000000000000000000006e6574207469746c650000001c00bb00
203-01005000f303000000000000000000000000000000000000000000000108bc00
204-03000000ef03000000000000090000000000000000000000000000006e657420
205-7469746c650000001c00bc0001005000f3030000000000000000000000000000
206-00000000000000000108bd0003000000ef030000000000000900000000000000
207-00000000000000006e6574207469746c650000001c00bd0001005000f3030000
208-00000000000000000000000000000000000000000108be0003000000ef030000
209-00000000090000000000000000000000000000006e6574207469746c65000000
210-1c00be0001005000f30300000000000000000000000000000000000000000000
211-0108bf0003000000ef0300000000000009000000000000000000000000000000
212-6e6574207469746c650000001c00bf0001005000f30300000000000000000000
213-0000000000000000000000000108c00003000000ef0300000000000009000000
214-0000000000000000000000006e6574207469746c650000001c00c00001005000
215-f303000000000000000000000000000000000000000000000108c10003000000
216-ef03000000000000090000000000000000000000000000006e6574207469746c
217-650000001c00c10001005000f303000000000000000000000000000000000000
218-000000000108c20003000000ef03000000000000090000000000000000000000
219-000000006e6574207469746c650000001c00c20001005000f303000000000000
220-000000000000000000000000000000000108c30003000000ef03000000000000
221-090000000000000000000000000000006e6574207469746c650000001c00c300
222-01005000f303000000000000000000000000000000000000000000000108c400
223-03000000ef03000000000000090000000000000000000000000000006e657420
224-7469746c650000001c00c40001005000f3030000000000000000000000000000
225-00000000000000000108c50003000000ef030000000000000900000000000000
226-00000000000000006e6574207469746c650000001c00c50001005000f3030000
227-00000000000000000000000000000000000000000108c60003000000ef030000
228-00000000090000000000000000000000000000006e6574207469746c65000000
229-1c00c60001005000f30300000000000000000000000000000000000000000000
230-0108c70003000000ef0300000000000009000000000000000000000000000000
231-6e6574207469746c650000001c00c70001005000f30300000000000000000000
232-0000000000000000000000000108c80003000000ef0300000000000009000000
233-0000000000000000000000006e6574207469746c650000001c00c80001005000
234-f303000000000000000000000000000000000000000000000108c90003000000
235-ef03000000000000090000000000000000000000000000006e6574207469746c
236-650000001c00c90001005000f303000000000000000000000000000000000000
237-000000000108ca0003000000ef03000000000000090000000000000000000000
238-000000006e6574207469746c650000001c00ca0001005000f303000000000000
239-000000000000000000000000000000000108cb0003000000ef03000000000000
240-090000000000000000000000000000006e6574207469746c650000001c00cb00
241-01005000f303000000000000000000000000000000000000000000000108cc00
242-03000000ef03000000000000090000000000000000000000000000006e657420
243-7469746c650000001c00cc0001005000f3030000000000000000000000000000
244-00000000000000000108cd0003000000ef030000000000000900000000000000
245-00000000000000006e6574207469746c650000001c00cd0001005000f3030000
246-00000000000000000000000000000000000000000108ce0003000000ef030000
247-00000000090000000000000000000000000000006e6574207469746c65000000
248-1c00ce0001005000f30300000000000000000000000000000000000000000000
249-0108cf0003000000ef0300000000000009000000000000000000000000000000
250-6e6574207469746c650000001c00cf0001005000f30300000000000000000000
251-0000000000000000000000000108d00003000000ef0300000000000009000000
252-0000000000000000000000006e6574207469746c650000001c00d00001005000
253-f303000000000000000000000000000000000000000000000108d10003000000
254-ef03000000000000090000000000000000000000000000006e6574207469746c
255-650000001c00d10001005000f303000000000000000000000000000000000000
256-000000000108d20003000000ef03000000000000090000000000000000000000
257-000000006e6574207469746c650000001c00d20001005000f303000000000000
258-000000000000000000000000000000000108d30003000000ef03000000000000
259-090000000000000000000000000000006e6574207469746c650000001c00d300
260-01005000f303000000000000000000000000000000000000000000000108d400
261-03000000ef03000000000000090000000000000000000000000000006e657420
262-7469746c650000001c00d40001005000f3030000000000000000000000000000
263-00000000000000000108d50003000000ef030000000000000900000000000000
264-00000000000000006e6574207469746c650000001c00d50001005000f3030000
265-00000000000000000000000000000000000000000108d60003000000ef030000
266-00000000090000000000000000000000000000006e6574207469746c65000000
267-1c00d60001005000f30300000000000000000000000000000000000000000000
268-0108d70003000000ef0300000000000009000000000000000000000000000000
269-6e6574207469746c650000001c00d70001005000f30300000000000000000000
270-0000000000000000000000000108d80003000000ef0300000000000009000000
271-0000000000000000000000006e6574207469746c650000001c00d80001005000
272-f303000000000000000000000000000000000000000000000108d90003000000
273-ef03000000000000090000000000000000000000000000006e6574207469746c
274-650000001c00d90001005000f303000000000000000000000000000000000000
275-000000000108da0003000000ef03000000000000090000000000000000000000
276-000000006e6574207469746c650000001c00da0001005000f303000000000000
277-000000000000000000000000000000000108db0003000000ef03000000000000
278-090000000000000000000000000000006e6574207469746c650000001c00db00
279-01005000f303000000000000000000000000000000000000000000000108dc00
280-03000000ef03000000000000090000000000000000000000000000006e657420
281-7469746c650000001c00dc0001005000f3030000000000000000000000000000
282-00000000000000000108dd0003000000ef030000000000000900000000000000
283-00000000000000006e6574207469746c650000001c00dd0001005000f3030000
284-00000000000000000000000000000000000000000108de0003000000ef030000
285-00000000090000000000000000000000000000006e6574207469746c65000000
286-1c00de0001005000f30300000000000000000000000000000000000000000000
287-0108df0003000000ef0300000000000009000000000000000000000000000000
288-6e6574207469746c650000001c00df0001005000f30300000000000000000000
289-0000000000000000000000000108e00003000000ef0300000000000009000000
290-0000000000000000000000006e6574207469746c650000001c00e00001005000
291-f303000000000000000000000000000000000000000000000108e10003000000
292-ef03000000000000090000000000000000000000000000006e6574207469746c
293-650000001c00e10001005000f303000000000000000000000000000000000000
294-000000000108e20003000000ef03000000000000090000000000000000000000
295-000000006e6574207469746c650000001c00e20001005000f303000000000000
296-000000000000000000000000000000000108e30003000000ef03000000000000
297-090000000000000000000000000000006e6574207469746c650000001c00e300
298-01005000f303000000000000000000000000000000000000000000000108e400
299-03000000ef03000000000000090000000000000000000000000000006e657420
300-7469746c650000001c00e40001005000f3030000000000000000000000000000
301-00000000000000000108e50003000000ef030000000000000900000000000000
302-00000000000000006e6574207469746c650000001c00e50001005000f3030000
303-00000000000000000000000000000000000000000108e60003000000ef030000
304-00000000090000000000000000000000000000006e6574207469746c65000000
305-1c00e60001005000f30300000000000000000000000000000000000000000000
306-0108e70003000000ef0300000000000009000000000000000000000000000000
307-6e6574207469746c650000001c00e70001005000f30300000000000000000000
308-0000000000000000000000000108e80003000000ef0300000000000009000000
309-0000000000000000000000006e6574207469746c650000001c00e80001005000
310-f303000000000000000000000000000000000000000000000108e90003000000
311-ef03000000000000090000000000000000000000000000006e6574207469746c
312-650000001c00e90001005000f303000000000000000000000000000000000000
313-000000000108ea0003000000ef03000000000000090000000000000000000000
314-000000006e6574207469746c650000001c00ea0001005000f303000000000000
315-000000000000000000000000000000000108eb0003000000ef03000000000000
316-090000000000000000000000000000006e6574207469746c650000001c00eb00
317-01005000f303000000000000000000000000000000000000000000000108ec00
318-03000000ef03000000000000090000000000000000000000000000006e657420
319-7469746c650000001c00ec0001005000f3030000000000000000000000000000
320-00000000000000000108ed0003000000ef030000000000000900000000000000
321-00000000000000006e6574207469746c650000001c00ed0001005000f3030000
322-00000000000000000000000000000000000000000108ee0003000000ef030000
323-00000000090000000000000000000000000000006e6574207469746c65000000
324-1c00ee0001005000f30300000000000000000000000000000000000000000000
325-0108ef0003000000ef0300000000000009000000000000000000000000000000
326-6e6574207469746c650000001c00ef0001005000f30300000000000000000000
327-0000000000000000000000000108f00003000000ef0300000000000009000000
328-0000000000000000000000006e6574207469746c650000001c00f00001005000
329-f303000000000000000000000000000000000000000000000108f10003000000
330-ef03000000000000090000000000000000000000000000006e6574207469746c
331-650000001c00f10001005000f303000000000000000000000000000000000000
332-000000000108f20003000000ef03000000000000090000000000000000000000
333-000000006e6574207469746c650000001c00f20001005000f303000000000000
334-000000000000000000000000000000000108f30003000000ef03000000000000
335-090000000000000000000000000000006e6574207469746c650000001c00f300
336-01005000f303000000000000000000000000000000000000000000000108f400
337-03000000ef03000000000000090000000000000000000000000000006e657420
338-7469746c650000001c00f40001005000f3030000000000000000000000000000
339-00000000000000000108f50003000000ef030000000000000900000000000000
340-00000000000000006e6574207469746c650000001c00f50001005000f3030000
341-00000000000000000000000000000000000000000108f60003000000ef030000
342-00000000090000000000000000000000000000006e6574207469746c65000000
343-1c00f60001005000f30300000000000000000000000000000000000000000000
344-0108f70003000000ef0300000000000009000000000000000000000000000000
345-6e6574207469746c650000001c00f70001005000f30300000000000000000000
346-0000000000000000000000000108f80003000000ef0300000000000009000000
347-0000000000000000000000006e6574207469746c650000001c00f80001005000
348-f303000000000000000000000000000000000000000000000108f90003000000
349-ef03000000000000090000000000000000000000000000006e6574207469746c
350-650000001c00f90001005000f303000000000000000000000000000000000000
351-000000000108fa0003000000ef03000000000000090000000000000000000000
352-000000006e6574207469746c650000001c00fa0001005000f303000000000000
353-000000000000000000000000000000000108fb0003000000ef03000000000000
354-090000000000000000000000000000006e6574207469746c650000001c00fb00
355-01005000f303000000000000000000000000000000000000000000000108fc00
356-03000000ef03000000000000090000000000000000000000000000006e657420
357-7469746c650000001c00fc0001005000f3030000000000000000000000000000
358-00000000000000000108fd0003000000ef030000000000000900000000000000
359-00000000000000006e6574207469746c650000001c00fd0001005000f3030000
360-00000000000000000000000000000000000000000108fe0003000000ef030000
361-00000000090000000000000000000000000000006e6574207469746c65000000
362-1c00fe0001005000f30300000000000000000000000000000000000000000000
363-0108ff0003000000ef0300000000000009000000000000000000000000000000
364-6e6574207469746c650000001c00ff0001005000f30300000000000000000000
365-0000000000000000000000000108000103000000ef0300000000000009000000
366-0000000000000000000000006e6574207469746c650000001c00000101005000
367-f303000000000000000000000000000000000000000000000108010103000000
368-ef03000000000000090000000000000000000000000000006e6574207469746c
369-650000001c00010101005000f303000000000000000000000000000000000000
370-000000000108020103000000ef03000000000000090000000000000000000000
371-000000006e6574207469746c650000001c00020101005000f303000000000000
372-000000000000000000000000000000000108030103000000ef03000000000000
373-090000000000000000000000000000006e6574207469746c650000001c000301
374-01005000f3030000000000000000000000000000000000000000000001080401
375-03000000ef03000000000000090000000000000000000000000000006e657420
376-7469746c650000001c00040101005000f3030000000000000000000000000000
377-00000000000000000108050103000000ef030000000000000900000000000000
378-00000000000000006e6574207469746c650000001c00050101005000f3030000
379-00000000000000000000000000000000000000000108060103000000ef030000
380-00000000090000000000000000000000000000006e6574207469746c65000000
381-1c00060101005000f30300000000000000000000000000000000000000000000
382-0108070103000000ef0300000000000009000000000000000000000000000000
383-6e6574207469746c650000001c00070101005000f30300000000000000000000
384-0000000000000000000000000108080103000000ef0300000000000009000000
385-0000000000000000000000006e6574207469746c650000001c00080101005000
386-f303000000000000000000000000000000000000000000000108090103000000
387-ef03000000000000090000000000000000000000000000006e6574207469746c
388-650000001c00090101005000f303000000000000000000000000000000000000
389-0000000001080a0103000000ef03000000000000090000000000000000000000
390-000000006e6574207469746c650000001c000a0101005000f303000000000000
391-0000000000000000000000000000000001080b0103000000ef03000000000000
392-090000000000000000000000000000006e6574207469746c650000001c000b01
393-01005000f3030000000000000000000000000000000000000000000001080c01
394-03000000ef03000000000000090000000000000000000000000000006e657420
395-7469746c650000001c000c0101005000f3030000000000000000000000000000
396-000000000000000001080d0103000000ef030000000000000900000000000000
397-00000000000000006e6574207469746c650000001c000d0101005000f3030000
398-000000000000000000000000000000000000000001080e0103000000ef030000
399-00000000090000000000000000000000000000006e6574207469746c65000000
400-1c000e0101005000f30300000000000000000000000000000000000000000000
401-01080f0103000000ef0300000000000009000000000000000000000000000000
402-6e6574207469746c650000001c000f0101005000f30300000000000000000000
403-0000000000000000000000000108100103000000ef0300000000000009000000
404-0000000000000000000000006e6574207469746c650000001c00100101005000
405-f303000000000000000000000000000000000000000000000108110103000000
406-ef03000000000000090000000000000000000000000000006e6574207469746c
407-650000001c00110101005000f303000000000000000000000000000000000000
408-000000000108120103000000ef03000000000000090000000000000000000000
409-000000006e6574207469746c650000001c00120101005000f303000000000000
410-000000000000000000000000000000000108130103000000ef03000000000000
411-090000000000000000000000000000006e6574207469746c650000001c001301
412-01005000f3030000000000000000000000000000000000000000000001081401
413-03000000ef03000000000000090000000000000000000000000000006e657420
414-7469746c650000001c00140101005000f3030000000000000000000000000000
415-00000000000000000108150103000000ef030000000000000900000000000000
416-00000000000000006e6574207469746c650000001c00150101005000f3030000
417-00000000000000000000000000000000000000000108160103000000ef030000
418-00000000090000000000000000000000000000006e6574207469746c65000000
419-1c00160101005000f30300000000000000000000000000000000000000000000
420-0108170103000000ef0300000000000009000000000000000000000000000000
421-6e6574207469746c650000001c00170101005000f30300000000000000000000
422-0000000000000000000000000108180103000000ef0300000000000009000000
423-0000000000000000000000006e6574207469746c650000001c00180101005000
424-f303000000000000000000000000000000000000000000000108190103000000
425-ef03000000000000090000000000000000000000000000006e6574207469746c
426-650000001c00190101005000f303000000000000000000000000000000000000
427-0000000001081a0103000000ef03000000000000090000000000000000000000
428-000000006e6574207469746c650000001c001a0101005000f303000000000000
429-0000000000000000000000000000000001081b0103000000ef03000000000000
430-090000000000000000000000000000006e6574207469746c650000001c001b01
431-01005000f3030000000000000000000000000000000000000000000001081c01
432-03000000ef03000000000000090000000000000000000000000000006e657420
433-7469746c650000001c001c0101005000f3030000000000000000000000000000
434-000000000000000001081d0103000000ef030000000000000900000000000000
435-00000000000000006e6574207469746c650000001c001d0101005000f3030000
436-000000000000000000000000000000000000000001081e0103000000ef030000
437-00000000090000000000000000000000000000006e6574207469746c65000000
438-1c001e0101005000f30300000000000000000000000000000000000000000000
439-01081f0103000000ef0300000000000009000000000000000000000000000000
440-6e6574207469746c650000001c001f0101005000f30300000000000000000000
441-0000000000000000000000000108200103000000ef0300000000000009000000
442-0000000000000000000000006e6574207469746c650000001c00200101005000
443-f303000000000000000000000000000000000000000000000108210103000000
444-ef03000000000000090000000000000000000000000000006e6574207469746c
445-650000001c00210101005000f303000000000000000000000000000000000000
446-000000000108220103000000ef03000000000000090000000000000000000000
447-000000006e6574207469746c650000001c00220101005000f303000000000000
448-000000000000000000000000000000000108230103000000ef03000000000000
449-090000000000000000000000000000006e6574207469746c650000001c002301
450-01005000f3030000000000000000000000000000000000000000000001082401
451-03000000ef03000000000000090000000000000000000000000000006e657420
452-7469746c650000001c00240101005000f3030000000000000000000000000000
453-00000000000000000108250103000000ef030000000000000900000000000000
454-00000000000000006e6574207469746c650000001c00250101005000f3030000
455-00000000000000000000000000000000000000000108260103000000ef030000
456-00000000090000000000000000000000000000006e6574207469746c65000000
457-1c00260101005000f30300000000000000000000000000000000000000000000
458-0108270103000000ef0300000000000009000000000000000000000000000000
459-6e6574207469746c650000001c00270101005000f30300000000000000000000
460-0000000000000000000000000108280103000000ef0300000000000009000000
461-0000000000000000000000006e6574207469746c650000001c00280101005000
462-f303000000000000000000000000000000000000000000000108290103000000
463-ef03000000000000090000000000000000000000000000006e6574207469746c
464-650000001c00290101005000f303000000000000000000000000000000000000
465-0000000001082a0103000000ef03000000000000090000000000000000000000
466-000000006e6574207469746c650000001c002a0101005000f303000000000000
467-0000000000000000000000000000000001082b0103000000ef03000000000000
468-090000000000000000000000000000006e6574207469746c650000001c002b01
469-01005000f3030000000000000000000000000000000000000000000001082c01
470-03000000ef03000000000000090000000000000000000000000000006e657420
471-7469746c650000001c002c0101005000f3030000000000000000000000000000
472-000000000000000001082d0103000000ef030000000000000900000000000000
473-00000000000000006e6574207469746c650000001c002d0101005000f3030000
474-000000000000000000000000000000000000000001082e0103000000ef030000
475-00000000090000000000000000000000000000006e6574207469746c65000000
476-1c002e0101005000f30300000000000000000000000000000000000000000000
477-01082f0103000000ef0300000000000009000000000000000000000000000000
478-6e6574207469746c650000001c002f0101005000f30300000000000000000000
479-0000000000000000000000000108300103000000ef0300000000000009000000
480-0000000000000000000000006e6574207469746c650000001c00300101005000
481-f303000000000000000000000000000000000000000000000108310103000000
482-ef03000000000000090000000000000000000000000000006e6574207469746c
483-650000001c00310101005000f303000000000000000000000000000000000000
484-000000000108320103000000ef03000000000000090000000000000000000000
485-000000006e6574207469746c650000001c00320101005000f303000000000000
486-000000000000000000000000000000000108330103000000ef03000000000000
487-090000000000000000000000000000006e6574207469746c650000001c003301
488-01005000f3030000000000000000000000000000000000000000000001083401
489-03000000ef03000000000000090000000000000000000000000000006e657420
490-7469746c650000001c00340101005000f3030000000000000000000000000000
491-00000000000000000108350103000000ef030000000000000900000000000000
492-00000000000000006e6574207469746c650000001c00350101005000f3030000
493-00000000000000000000000000000000000000000108360103000000ef030000
494-00000000090000000000000000000000000000006e6574207469746c65000000
495-1c00360101005000f30300000000000000000000000000000000000000000000
496-0108370103000000ef0300000000000009000000000000000000000000000000
497-6e6574207469746c650000001c00370101005000f30300000000000000000000
498-0000000000000000000000000108380103000000ef0300000000000009000000
499-0000000000000000000000006e6574207469746c650000001c00380101005000
500-f303000000000000000000000000000000000000000000000108390103000000
501-ef03000000000000090000000000000000000000000000006e6574207469746c
502-650000001c00390101005000f303000000000000000000000000000000000000
503-0000000001083a0103000000ef03000000000000090000000000000000000000
504-000000006e6574207469746c650000001c003a0101005000f303000000000000
505-0000000000000000000000000000000001083b0103000000ef03000000000000
506-090000000000000000000000000000006e6574207469746c650000001c003b01
507-01005000f3030000000000000000000000000000000000000000000001083c01
508-03000000ef03000000000000090000000000000000000000000000006e657420
509-7469746c650000001c003c0101005000f3030000000000000000000000000000
510-000000000000000001083d0103000000ef030000000000000900000000000000
511-00000000000000006e6574207469746c650000001c003d0101005000f3030000
512-000000000000000000000000000000000000000001083e0103000000ef030000
513-00000000090000000000000000000000000000006e6574207469746c65000000
514-1c003e0101005000f30300000000000000000000000000000000000000000000
515-01083f0103000000ef0300000000000009000000000000000000000000000000
516-6e6574207469746c650000001c003f0101005000f30300000000000000000000
517-0000000000000000000000000108400103000000ef0300000000000009000000
518-0000000000000000000000006e6574207469746c650000001c00400101005000
519-f303000000000000000000000000000000000000000000000108410103000000
520-ef03000000000000090000000000000000000000000000006e6574207469746c
521-650000001c00410101005000f303000000000000000000000000000000000000
522-000000000108420103000000ef03000000000000090000000000000000000000
523-000000006e6574207469746c650000001c00420101005000f303000000000000
524-000000000000000000000000000000000108430103000000ef03000000000000
525-090000000000000000000000000000006e6574207469746c650000001c004301
526-01005000f3030000000000000000000000000000000000000000000001084401
527-03000000ef03000000000000090000000000000000000000000000006e657420
528-7469746c650000001c00440101005000f3030000000000000000000000000000
529-00000000000000000108450103000000ef030000000000000900000000000000
530-00000000000000006e6574207469746c650000001c00450101005000f3030000
531-00000000000000000000000000000000000000000108460103000000ef030000
532-00000000090000000000000000000000000000006e6574207469746c65000000
533-1c00460101005000f30300000000000000000000000000000000000000000000
534-0108470103000000ef0300000000000009000000000000000000000000000000
535-6e6574207469746c650000001c00470101005000f30300000000000000000000
536-0000000000000000000000000108480103000000ef0300000000000009000000
537-0000000000000000000000006e6574207469746c650000001c00480101005000
538-f303000000000000000000000000000000000000000000000108490103000000
539-ef03000000000000090000000000000000000000000000006e6574207469746c
540-650000001c00490101005000f303000000000000000000000000000000000000
541-0000000001084a0103000000ef03000000000000090000000000000000000000
542-000000006e6574207469746c650000001c004a0101005000f303000000000000
543-0000000000000000000000000000000001084b0103000000ef03000000000000
544-090000000000000000000000000000006e6574207469746c650000001c004b01
545-01005000f3030000000000000000000000000000000000000000000001084c01
546-03000000ef03000000000000090000000000000000000000000000006e657420
547-7469746c650000001c004c0101005000f3030000000000000000000000000000
548-000000000000000001084d0103000000ef030000000000000900000000000000
549-00000000000000006e6574207469746c650000001c004d0101005000f3030000
550-000000000000000000000000000000000000000001084e0103000000ef030000
551-00000000090000000000000000000000000000006e6574207469746c65000000
552-1c004e0101005000f30300000000000000000000000000000000000000000000
553-01084f0103000000ef0300000000000009000000000000000000000000000000
554-6e6574207469746c650000001c004f0101005000f30300000000000000000000
555-0000000000000000000000000108500103000000ef0300000000000009000000
556-0000000000000000000000006e6574207469746c650000001c00500101005000
557-f303000000000000000000000000000000000000000000000108510103000000
558-ef03000000000000090000000000000000000000000000006e6574207469746c
559-650000001c00510101005000f303000000000000000000000000000000000000
560-000000000108520103000000ef03000000000000090000000000000000000000
561-000000006e6574207469746c650000001c00520101005000f303000000000000
562-000000000000000000000000000000000108530103000000ef03000000000000
563-090000000000000000000000000000006e6574207469746c650000001c005301
564-01005000f3030000000000000000000000000000000000000000000001085401
565-03000000ef03000000000000090000000000000000000000000000006e657420
566-7469746c650000001c00540101005000f3030000000000000000000000000000
567-00000000000000000108550103000000ef030000000000000900000000000000
568-00000000000000006e6574207469746c650000001c00550101005000f3030000
569-00000000000000000000000000000000000000000108560103000000ef030000
570-00000000090000000000000000000000000000006e6574207469746c65000000
571-1c00560101005000f30300000000000000000000000000000000000000000000
572-0108570103000000ef0300000000000009000000000000000000000000000000
573-6e6574207469746c650000001c00570101005000f30300000000000000000000
574-0000000000000000000000000108580103000000ef0300000000000009000000
575-0000000000000000000000006e6574207469746c650000001c00580101005000
576-f303000000000000000000000000000000000000000000000108590103000000
577-ef03000000000000090000000000000000000000000000006e6574207469746c
578-650000001c00590101005000f303000000000000000000000000000000000000
579-0000000001085a0103000000ef03000000000000090000000000000000000000
580-000000006e6574207469746c650000001c005a0101005000f303000000000000
581-0000000000000000000000000000000001085b0103000000ef03000000000000
582-090000000000000000000000000000006e6574207469746c650000001c005b01
583-01005000f3030000000000000000000000000000000000000000000001085c01
584-03000000ef03000000000000090000000000000000000000000000006e657420
585-7469746c650000001c005c0101005000f3030000000000000000000000000000
586-000000000000000001085d0103000000ef030000000000000900000000000000
587-00000000000000006e6574207469746c650000001c005d0101005000f3030000
588-000000000000000000000000000000000000000001085e0103000000ef030000
589-00000000090000000000000000000000000000006e6574207469746c65000000
590-1c005e0101005000f30300000000000000000000000000000000000000000000
591-01085f0103000000ef0300000000000009000000000000000000000000000000
592-6e6574207469746c650000001c005f0101005000f30300000000000000000000
593-0000000000000000000000000108600103000000ef0300000000000009000000
594-0000000000000000000000006e6574207469746c650000001c00600101005000
595-f303000000000000000000000000000000000000000000000108610103000000
596-ef03000000000000090000000000000000000000000000006e6574207469746c
597-650000001c00610101005000f303000000000000000000000000000000000000
598-000000000108620103000000ef03000000000000090000000000000000000000
599-000000006e6574207469746c650000001c00620101005000f303000000000000
600-000000000000000000000000000000000108630103000000ef03000000000000
601-090000000000000000000000000000006e6574207469746c650000001c006301
602-01005000f3030000000000000000000000000000000000000000000001086401
603-03000000ef03000000000000090000000000000000000000000000006e657420
604-7469746c650000001c00640101005000f3030000000000000000000000000000
605-00000000000000000108650103000000ef030000000000000900000000000000
606-00000000000000006e6574207469746c650000001c00650101005000f3030000
607-00000000000000000000000000000000000000000108660103000000ef030000
608-00000000090000000000000000000000000000006e6574207469746c65000000
609-1c00660101005000f30300000000000000000000000000000000000000000000
610-0108670103000000ef0300000000000009000000000000000000000000000000
611-6e6574207469746c650000001c00670101005000f30300000000000000000000
612-0000000000000000000000000108680103000000ef0300000000000009000000
613-0000000000000000000000006e6574207469746c650000001c00680101005000
614-f303000000000000000000000000000000000000000000000108690103000000
615-ef03000000000000090000000000000000000000000000006e6574207469746c
616-650000001c00690101005000f303000000000000000000000000000000000000
617-0000000001086a0103000000ef03000000000000090000000000000000000000
618-000000006e6574207469746c650000001c006a0101005000f303000000000000
619-0000000000000000000000000000000001086b0103000000ef03000000000000
620-090000000000000000000000000000006e6574207469746c650000001c006b01
621-01005000f3030000000000000000000000000000000000000000000001086c01
622-03000000ef03000000000000090000000000000000000000000000006e657420
623-7469746c650000001c006c0101005000f3030000000000000000000000000000
624-000000000000000001086d0103000000ef030000000000000900000000000000
625-00000000000000006e6574207469746c650000001c006d0101005000f3030000
626-000000000000000000000000000000000000000001086e0103000000ef030000
627-00000000090000000000000000000000000000006e6574207469746c65000000
628-1c006e0101005000f30300000000000000000000000000000000000000000000
629-01086f0103000000ef0300000000000009000000000000000000000000000000
630-6e6574207469746c650000001c006f0101005000f30300000000000000000000
631-0000000000000000000000000108700103000000ef0300000000000009000000
632-0000000000000000000000006e6574207469746c650000001c00700101005000
633-f303000000000000000000000000000000000000000000000108710103000000
634-ef03000000000000090000000000000000000000000000006e6574207469746c
635-650000001c00710101005000f303000000000000000000000000000000000000
636-000000000108720103000000ef03000000000000090000000000000000000000
637-000000006e6574207469746c650000001c00720101005000f303000000000000
638-000000000000000000000000000000000108730103000000ef03000000000000
639-090000000000000000000000000000006e6574207469746c650000001c007301
640-01005000f3030000000000000000000000000000000000000000000001087401
641-03000000ef03000000000000090000000000000000000000000000006e657420
642-7469746c650000001c00740101005000f3030000000000000000000000000000
643-00000000000000000108750103000000ef030000000000000900000000000000
644-00000000000000006e6574207469746c650000001c00750101005000f3030000
645-00000000000000000000000000000000000000000108760103000000ef030000
646-00000000090000000000000000000000000000006e6574207469746c65000000
647-1c00760101005000f30300000000000000000000000000000000000000000000
648-0108770103000000ef0300000000000009000000000000000000000000000000
649-6e6574207469746c650000001c00770101005000f30300000000000000000000
650-0000000000000000000000000108780103000000ef0300000000000009000000
651-0000000000000000000000006e6574207469746c650000001c00780101005000
652-f303000000000000000000000000000000000000000000000108790103000000
653-ef03000000000000090000000000000000000000000000006e6574207469746c
654-650000001c00790101005000f303000000000000000000000000000000000000
655-0000000001087a0103000000ef03000000000000090000000000000000000000
656-000000006e6574207469746c650000001c007a0101005000f303000000000000
657-0000000000000000000000000000000001087b0103000000ef03000000000000
658-090000000000000000000000000000006e6574207469746c650000001c007b01
659-01005000f3030000000000000000000000000000000000000000000001087c01
660-03000000ef03000000000000090000000000000000000000000000006e657420
661-7469746c650000001c007c0101005000f3030000000000000000000000000000
662-000000000000000001087d0103000000ef030000000000000900000000000000
663-00000000000000006e6574207469746c650000001c007d0101005000f3030000
664-000000000000000000000000000000000000000001087e0103000000ef030000
665-00000000090000000000000000000000000000006e6574207469746c65000000
666-1c007e0101005000f30300000000000000000000000000000000000000000000
667-01087f0103000000ef0300000000000009000000000000000000000000000000
668-6e6574207469746c650000001c007f0101005000f30300000000000000000000
669-0000000000000000000000000108800103000000ef0300000000000009000000
670-0000000000000000000000006e6574207469746c650000001c00800101005000
671-f303000000000000000000000000000000000000000000000108810103000000
672-ef03000000000000090000000000000000000000000000006e6574207469746c
673-650000001c00810101005000f303000000000000000000000000000000000000
674-000000000108820103000000ef03000000000000090000000000000000000000
675-000000006e6574207469746c650000001c00820101005000f303000000000000
676-000000000000000000000000000000000108830103000000ef03000000000000
677-090000000000000000000000000000006e6574207469746c650000001c008301
678-01005000f3030000000000000000000000000000000000000000000001088401
679-03000000ef03000000000000090000000000000000000000000000006e657420
680-7469746c650000001c00840101005000f3030000000000000000000000000000
681-00000000000000000108850103000000ef030000000000000900000000000000
682-00000000000000006e6574207469746c650000001c00850101005000f3030000
683-00000000000000000000000000000000000000000108860103000000ef030000
684-00000000090000000000000000000000000000006e6574207469746c65000000
685-1c00860101005000f30300000000000000000000000000000000000000000000
686-0108870103000000ef0300000000000009000000000000000000000000000000
687-6e6574207469746c650000001c00870101005000f30300000000000000000000
688-0000000000000000000000000108880103000000ef0300000000000009000000
689-0000000000000000000000006e6574207469746c650000001c00880101005000
690-f303000000000000000000000000000000000000000000000108890103000000
691-ef03000000000000090000000000000000000000000000006e6574207469746c
692-650000001c00890101005000f303000000000000000000000000000000000000
693-0000000001088a0103000000ef03000000000000090000000000000000000000
694-000000006e6574207469746c650000001c008a0101005000f303000000000000
695-0000000000000000000000000000000001088b0103000000ef03000000000000
696-090000000000000000000000000000006e6574207469746c650000001c008b01
697-01005000f3030000000000000000000000000000000000000000000001088c01
698-03000000ef03000000000000090000000000000000000000000000006e657420
699-7469746c650000001c008c0101005000f3030000000000000000000000000000
700-000000000000000001088d0103000000ef030000000000000900000000000000
701-00000000000000006e6574207469746c650000001c008d0101005000f3030000
702-000000000000000000000000000000000000000001088e0103000000ef030000
703-00000000090000000000000000000000000000006e6574207469746c65000000
704-1c008e0101005000f30300000000000000000000000000000000000000000000
705-01088f0103000000ef0300000000000009000000000000000000000000000000
706-6e6574207469746c650000001c008f0101005000f30300000000000000000000
707-0000000000000000000000000108900103000000ef0300000000000009000000
708-0000000000000000000000006e6574207469746c650000001c00900101005000
709-f303000000000000000000000000000000000000000000000108910103000000
710-ef03000000000000090000000000000000000000000000006e6574207469746c
711-650000001c00910101005000f303000000000000000000000000000000000000
712-000000000108920103000000ef03000000000000090000000000000000000000
713-000000006e6574207469746c650000001c00920101005000f303000000000000
714-000000000000000000000000000000000108930103000000ef03000000000000
715-090000000000000000000000000000006e6574207469746c650000001c009301
716-01005000f3030000000000000000000000000000000000000000000001089401
717-03000000ef03000000000000090000000000000000000000000000006e657420
718-7469746c650000001c00940101005000f3030000000000000000000000000000
719-00000000000000000108950103000000ef030000000000000900000000000000
720-00000000000000006e6574207469746c650000001c00950101005000f3030000
721-00000000000000000000000000000000000000000108960103000000ef030000
722-00000000090000000000000000000000000000006e6574207469746c65000000
723-1c00960101005000f30300000000000000000000000000000000000000000000
724-0108970103000000ef0300000000000009000000000000000000000000000000
725-6e6574207469746c650000001c00970101005000f30300000000000000000000
726-0000000000000000000000000108980103000000ef0300000000000009000000
727-0000000000000000000000006e6574207469746c650000001c00980101005000
728-f303000000000000000000000000000000000000000000000108990103000000
729-ef03000000000000090000000000000000000000000000006e6574207469746c
730-650000001c00990101005000f303000000000000000000000000000000000000
731-0000000001089a0103000000ef03000000000000090000000000000000000000
732-000000006e6574207469746c650000001c009a0101005000f303000000000000
733-0000000000000000000000000000000001089b0103000000ef03000000000000
734-090000000000000000000000000000006e6574207469746c650000001c009b01
735-01005000f3030000000000000000000000000000000000000000000001089c01
736-03000000ef03000000000000090000000000000000000000000000006e657420
737-7469746c650000001c009c0101005000f3030000000000000000000000000000
738-000000000000000001089d0103000000ef030000000000000900000000000000
739-00000000000000006e6574207469746c650000001c009d0101005000f3030000
740-000000000000000000000000000000000000000001089e0103000000ef030000
741-00000000090000000000000000000000000000006e6574207469746c65000000
742-1c009e0101005000f30300000000000000000000000000000000000000000000
743-01089f0103000000ef0300000000000009000000000000000000000000000000
744-6e6574207469746c650000001c009f0101005000f30300000000000000000000
745-0000000000000000000000000108a00103000000ef0300000000000009000000
746-0000000000000000000000006e6574207469746c650000001c00a00101005000
747-f303000000000000000000000000000000000000000000000108a10103000000
748-ef03000000000000090000000000000000000000000000006e6574207469746c
749-650000001c00a10101005000f303000000000000000000000000000000000000
750-000000000108a20103000000ef03000000000000090000000000000000000000
751-000000006e6574207469746c650000001c00a20101005000f303000000000000
752-000000000000000000000000000000000108a30103000000ef03000000000000
753-090000000000000000000000000000006e6574207469746c650000001c00a301
754-01005000f303000000000000000000000000000000000000000000000108a401
755-03000000ef03000000000000090000000000000000000000000000006e657420
756-7469746c650000001c00a40101005000f3030000000000000000000000000000
757-00000000000000000108a50103000000ef030000000000000900000000000000
758-00000000000000006e6574207469746c650000001c00a50101005000f3030000
759-00000000000000000000000000000000000000000108a60103000000ef030000
760-00000000090000000000000000000000000000006e6574207469746c65000000
761-1c00a60101005000f30300000000000000000000000000000000000000000000
762-0108a70103000000ef0300000000000009000000000000000000000000000000
763-6e6574207469746c650000001c00a70101005000f30300000000000000000000
764-0000000000000000000000000108a80103000000ef0300000000000009000000
765-0000000000000000000000006e6574207469746c650000001c00a80101005000
766-f303000000000000000000000000000000000000000000000108a90103000000
767-ef03000000000000090000000000000000000000000000006e6574207469746c
768-650000001c00a90101005000f303000000000000000000000000000000000000
769-000000000108aa0103000000ef03000000000000090000000000000000000000
770-000000006e6574207469746c650000001c00aa0101005000f303000000000000
771-000000000000000000000000000000000108ab0103000000ef03000000000000
772-090000000000000000000000000000006e6574207469746c650000001c00ab01
773-01005000f303000000000000000000000000000000000000000000000108ac01
774-03000000ef03000000000000090000000000000000000000000000006e657420
775-7469746c650000001c00ac0101005000f3030000000000000000000000000000
776-00000000000000000108ad0103000000ef030000000000000900000000000000
777-00000000000000006e6574207469746c650000001c00ad0101005000f3030000
778-00000000000000000000000000000000000000000108ae0103000000ef030000
779-00000000090000000000000000000000000000006e6574207469746c65000000
780-1c00ae0101005000f30300000000000000000000000000000000000000000000
781-0108af0103000000ef0300000000000009000000000000000000000000000000
782-6e6574207469746c650000001c00af0101005000f30300000000000000000000
783-0000000000000000000000000108b00103000000ef0300000000000009000000
784-0000000000000000000000006e6574207469746c650000001c00b00101005000
785-f303000000000000000000000000000000000000000000000108b10103000000
786-ef03000000000000090000000000000000000000000000006e6574207469746c
787-650000001c00b10101005000f303000000000000000000000000000000000000
788-000000000108b20103000000ef03000000000000090000000000000000000000
789-000000006e6574207469746c650000001c00b20101005000f303000000000000
790-000000000000000000000000000000000108b30103000000ef03000000000000
791-090000000000000000000000000000006e6574207469746c650000001c00b301
792-01005000f303000000000000000000000000000000000000000000000108b401
793-03000000ef03000000000000090000000000000000000000000000006e657420
794-7469746c650000001c00b40101005000f3030000000000000000000000000000
795-00000000000000000108b50103000000ef030000000000000900000000000000
796-00000000000000006e6574207469746c650000001c00b50101005000f3030000
797-00000000000000000000000000000000000000000108b60103000000ef030000
798-00000000090000000000000000000000000000006e6574207469746c65000000
799-1c00b60101005000f30300000000000000000000000000000000000000000000
800-0108b70103000000ef0300000000000009000000000000000000000000000000
801-6e6574207469746c650000001c00b70101005000f30300000000000000000000
802-0000000000000000000000000108b80103000000ef0300000000000009000000
803-0000000000000000000000006e6574207469746c650000001c00b80101005000
804-f303000000000000000000000000000000000000000000000108b90103000000
805-ef03000000000000090000000000000000000000000000006e6574207469746c
806-650000001c00b90101005000f303000000000000000000000000000000000000
807-000000000108ba0103000000ef03000000000000090000000000000000000000
808-000000006e6574207469746c650000001c00ba0101005000f303000000000000
809-000000000000000000000000000000000108bb0103000000ef03000000000000
810-090000000000000000000000000000006e6574207469746c650000001c00bb01
811-01005000f303000000000000000000000000000000000000000000000108bc01
812-03000000ef03000000000000090000000000000000000000000000006e657420
813-7469746c650000001c00bc0101005000f3030000000000000000000000000000
814-00000000000000000108bd0103000000ef030000000000000900000000000000
815-00000000000000006e6574207469746c650000001c00bd0101005000f3030000
816-00000000000000000000000000000000000000000108be0103000000ef030000
817-00000000090000000000000000000000000000006e6574207469746c65000000
818-1c00be0101005000f30300000000000000000000000000000000000000000000
819-0108bf0103000000ef0300000000000009000000000000000000000000000000
820-6e6574207469746c650000001c00bf0101005000f30300000000000000000000
821-0000000000000000000000000108c00103000000ef0300000000000009000000
822-0000000000000000000000006e6574207469746c650000001c00c00101005000
823-f303000000000000000000000000000000000000000000000108c10103000000
824-ef03000000000000090000000000000000000000000000006e6574207469746c
825-650000001c00c10101005000f303000000000000000000000000000000000000
826-000000000108c20103000000ef03000000000000090000000000000000000000
827-000000006e6574207469746c650000001c00c20101005000f303000000000000
828-000000000000000000000000000000000108c30103000000ef03000000000000
829-090000000000000000000000000000006e6574207469746c650000001c00c301
830-01005000f303000000000000000000000000000000000000000000000108c401
831-03000000ef03000000000000090000000000000000000000000000006e657420
832-7469746c650000001c00c40101005000f3030000000000000000000000000000
833-00000000000000000108c50103000000ef030000000000000900000000000000
834-00000000000000006e6574207469746c650000001c00c50101005000f3030000
835-00000000000000000000000000000000000000000108c60103000000ef030000
836-00000000090000000000000000000000000000006e6574207469746c65000000
837-1c00c60101005000f30300000000000000000000000000000000000000000000
838-0108c70103000000ef0300000000000009000000000000000000000000000000
839-6e6574207469746c650000001c00c70101005000f30300000000000000000000
840-0000000000000000000000000108c80103000000ef0300000000000009000000
841-0000000000000000000000006e6574207469746c650000001c00c80101005000
842-f303000000000000000000000000000000000000000000000108c90103000000
843-ef03000000000000090000000000000000000000000000006e6574207469746c
844-650000001c00c90101005000f303000000000000000000000000000000000000
845-000000000108ca0103000000ef03000000000000090000000000000000000000
846-000000006e6574207469746c650000001c00ca0101005000f303000000000000
847-000000000000000000000000000000000108cb0103000000ef03000000000000
848-090000000000000000000000000000006e6574207469746c650000001c00cb01
849-01005000f303000000000000000000000000000000000000000000000108cc01
850-03000000ef03000000000000090000000000000000000000000000006e657420
851-7469746c650000001c00cc0101005000f3030000000000000000000000000000
852-00000000000000000108cd0103000000ef030000000000000900000000000000
853-00000000000000006e6574207469746c650000001c00cd0101005000f3030000
854-00000000000000000000000000000000000000000108ce0103000000ef030000
855-00000000090000000000000000000000000000006e6574207469746c65000000
856-1c00ce0101005000f30300000000000000000000000000000000000000000000
857-0108cf0103000000ef0300000000000009000000000000000000000000000000
858-6e6574207469746c650000001c00cf0101005000f30300000000000000000000
859-0000000000000000000000000108d00103000000ef0300000000000009000000
860-0000000000000000000000006e6574207469746c650000001c00d00101005000
861-f303000000000000000000000000000000000000000000000108d10103000000
862-ef03000000000000090000000000000000000000000000006e6574207469746c
863-650000001c00d10101005000f303000000000000000000000000000000000000
864-000000000108d20103000000ef03000000000000090000000000000000000000
865-000000006e6574207469746c650000001c00d20101005000f303000000000000
866-000000000000000000000000000000000108d30103000000ef03000000000000
867-090000000000000000000000000000006e6574207469746c650000001c00d301
868-01005000f303000000000000000000000000000000000000000000000108d401
869-03000000ef03000000000000090000000000000000000000000000006e657420
870-7469746c650000001c00d40101005000f3030000000000000000000000000000
871-00000000000000000108d50103000000ef030000000000000900000000000000
872-00000000000000006e6574207469746c650000001c00d50101005000f3030000
873-00000000000000000000000000000000000000000108d60103000000ef030000
874-00000000090000000000000000000000000000006e6574207469746c65000000
875-1c00d60101005000f30300000000000000000000000000000000000000000000
876-0108d70103000000ef0300000000000009000000000000000000000000000000
877-6e6574207469746c650000001c00d70101005000f30300000000000000000000
878-0000000000000000000000000108d80103000000ef0300000000000009000000
879-0000000000000000000000006e6574207469746c650000001c00d80101005000
880-f303000000000000000000000000000000000000000000000108d90103000000
881-ef03000000000000090000000000000000000000000000006e6574207469746c
882-650000001c00d90101005000f303000000000000000000000000000000000000
883-000000000108da0103000000ef03000000000000090000000000000000000000
884-000000006e6574207469746c650000001c00da0101005000f303000000000000
885-000000000000000000000000000000000108db0103000000ef03000000000000
886-090000000000000000000000000000006e6574207469746c650000001c00db01
887-01005000f303000000000000000000000000000000000000000000000108dc01
888-03000000ef03000000000000090000000000000000000000000000006e657420
889-7469746c650000001c00dc0101005000f3030000000000000000000000000000
890-00000000000000000108dd0103000000ef030000000000000900000000000000
891-00000000000000006e6574207469746c650000001c00dd0101005000f3030000
892-00000000000000000000000000000000000000000108de0103000000ef030000
893-00000000090000000000000000000000000000006e6574207469746c65000000
894-1c00de0101005000f30300000000000000000000000000000000000000000000
895-0108df0103000000ef0300000000000009000000000000000000000000000000
896-6e6574207469746c650000001c00df0101005000f30300000000000000000000
897-0000000000000000000000000108e00103000000ef0300000000000009000000
898-0000000000000000000000006e6574207469746c650000001c00e00101005000
899-f303000000000000000000000000000000000000000000000108e10103000000
900-ef03000000000000090000000000000000000000000000006e6574207469746c
901-650000001c00e10101005000f303000000000000000000000000000000000000
902-000000000108e20103000000ef03000000000000090000000000000000000000
903-000000006e6574207469746c650000001c00e20101005000f303000000000000
904-000000000000000000000000000000000108e30103000000ef03000000000000
905-090000000000000000000000000000006e6574207469746c650000001c00e301
906-01005000f303000000000000000000000000000000000000000000000108e401
907-03000000ef03000000000000090000000000000000000000000000006e657420
908-7469746c650000001c00e40101005000f3030000000000000000000000000000
909-00000000000000000108e50103000000ef030000000000000900000000000000
910-00000000000000006e6574207469746c650000001c00e50101005000f3030000
911-00000000000000000000000000000000000000000108e60103000000ef030000
912-00000000090000000000000000000000000000006e6574207469746c65000000
913-1c00e60101005000f30300000000000000000000000000000000000000000000
914-0108e70103000000ef0300000000000009000000000000000000000000000000
915-6e6574207469746c650000001c00e70101005000f30300000000000000000000
916-0000000000000000000000000108e80103000000ef0300000000000009000000
917-0000000000000000000000006e6574207469746c650000001c00e80101005000
918-f303000000000000000000000000000000000000000000000108e90103000000
919-ef03000000000000090000000000000000000000000000006e6574207469746c
920-650000001c00e90101005000f303000000000000000000000000000000000000
921-000000000108ea0103000000ef03000000000000090000000000000000000000
922-000000006e6574207469746c650000001c00ea0101005000f303000000000000
923-000000000000000000000000000000000108eb0103000000ef03000000000000
924-090000000000000000000000000000006e6574207469746c650000001c00eb01
925-01005000f303000000000000000000000000000000000000000000000108ec01
926-03000000ef03000000000000090000000000000000000000000000006e657420
927-7469746c650000001c00ec0101005000f3030000000000000000000000000000
928-00000000000000000108ed0103000000ef030000000000000900000000000000
929-00000000000000006e6574207469746c650000001c00ed0101005000f3030000
930-00000000000000000000000000000000000000000108ee0103000000ef030000
931-00000000090000000000000000000000000000006e6574207469746c65000000
932-1c00ee0101005000f30300000000000000000000000000000000000000000000
933-0108ef0103000000ef0300000000000009000000000000000000000000000000
934-6e6574207469746c650000001c00ef0101005000f30300000000000000000000
935-0000000000000000000000000108f00103000000ef0300000000000009000000
936-0000000000000000000000006e6574207469746c650000001c00f00101005000
937-f303000000000000000000000000000000000000000000000108f10103000000
938-ef03000000000000090000000000000000000000000000006e6574207469746c
939-650000001c00f10101005000f303000000000000000000000000000000000000
940-000000000108f20103000000ef03000000000000090000000000000000000000
941-000000006e6574207469746c650000001c00f20101005000f303000000000000
942-000000000000000000000000000000000108f30103000000ef03000000000000
943-090000000000000000000000000000006e6574207469746c650000001c00f301
944-01005000f303000000000000000000000000000000000000000000000108f401
945-03000000ef03000000000000090000000000000000000000000000006e657420
946-7469746c650000001c00f40101005000f3030000000000000000000000000000
947-00000000000000000108f50103000000ef030000000000000900000000000000
948-00000000000000006e6574207469746c650000001c00f50101005000f3030000
949-00000000000000000000000000000000000000000108f60103000000ef030000
1+1c00710001005000f30300000000000000000000000000000000000000000000
2+0108720003000000ef0300000000000009000000000000000000000000000000
3+6e6574207469746c650000001c00720001005000f30300000000000000000000
4+0000000000000000000000000108730003000000ef0300000000000009000000
5+0000000000000000000000006e6574207469746c650000001c00730001005000
6+f303000000000000000000000000000000000000000000000108740003000000
7+ef03000000000000090000000000000000000000000000006e6574207469746c
8+650000001c00740001005000f303000000000000000000000000000000000000
9+000000000108750003000000ef03000000000000090000000000000000000000
10+000000006e6574207469746c650000001c00750001005000f303000000000000
11+000000000000000000000000000000000108760003000000ef03000000000000
12+090000000000000000000000000000006e6574207469746c650000001c007600
13+01005000f3030000000000000000000000000000000000000000000001087700
14+03000000ef03000000000000090000000000000000000000000000006e657420
15+7469746c650000001c00770001005000f3030000000000000000000000000000
16+00000000000000000108780003000000ef030000000000000900000000000000
17+00000000000000006e6574207469746c650000001c00780001005000f3030000
18+00000000000000000000000000000000000000000108790003000000ef030000
19+00000000090000000000000000000000000000006e6574207469746c65000000
20+1c00790001005000f30300000000000000000000000000000000000000000000
21+01087a0003000000ef0300000000000009000000000000000000000000000000
22+6e6574207469746c650000001c007a0001005000f30300000000000000000000
23+00000000000000000000000001087b0003000000ef0300000000000009000000
24+0000000000000000000000006e6574207469746c650000001c007b0001005000
25+f3030000000000000000000000000000000000000000000001087c0003000000
26+ef03000000000000090000000000000000000000000000006e6574207469746c
27+650000001c007c0001005000f303000000000000000000000000000000000000
28+0000000001087d0003000000ef03000000000000090000000000000000000000
29+000000006e6574207469746c650000001c007d0001005000f303000000000000
30+0000000000000000000000000000000001087e0003000000ef03000000000000
31+090000000000000000000000000000006e6574207469746c650000001c007e00
32+01005000f3030000000000000000000000000000000000000000000001087f00
33+03000000ef03000000000000090000000000000000000000000000006e657420
34+7469746c650000001c007f0001005000f3030000000000000000000000000000
35+00000000000000000108800003000000ef030000000000000900000000000000
36+00000000000000006e6574207469746c650000001c00800001005000f3030000
37+00000000000000000000000000000000000000000108810003000000ef030000
38+00000000090000000000000000000000000000006e6574207469746c65000000
39+1c00810001005000f30300000000000000000000000000000000000000000000
40+0108820003000000ef0300000000000009000000000000000000000000000000
41+6e6574207469746c650000001c00820001005000f30300000000000000000000
42+0000000000000000000000000108830003000000ef0300000000000009000000
43+0000000000000000000000006e6574207469746c650000001c00830001005000
44+f303000000000000000000000000000000000000000000000108840003000000
45+ef03000000000000090000000000000000000000000000006e6574207469746c
46+650000001c00840001005000f303000000000000000000000000000000000000
47+000000000108850003000000ef03000000000000090000000000000000000000
48+000000006e6574207469746c650000001c00850001005000f303000000000000
49+000000000000000000000000000000000108860003000000ef03000000000000
50+090000000000000000000000000000006e6574207469746c650000001c008600
51+01005000f3030000000000000000000000000000000000000000000001088700
52+03000000ef03000000000000090000000000000000000000000000006e657420
53+7469746c650000001c00870001005000f3030000000000000000000000000000
54+00000000000000000108880003000000ef030000000000000900000000000000
55+00000000000000006e6574207469746c650000001c00880001005000f3030000
56+00000000000000000000000000000000000000000108890003000000ef030000
57+00000000090000000000000000000000000000006e6574207469746c65000000
58+1c00890001005000f30300000000000000000000000000000000000000000000
59+01088a0003000000ef0300000000000009000000000000000000000000000000
60+6e6574207469746c650000001c008a0001005000f30300000000000000000000
61+00000000000000000000000001088b0003000000ef0300000000000009000000
62+0000000000000000000000006e6574207469746c650000001c008b0001005000
63+f3030000000000000000000000000000000000000000000001088c0003000000
64+ef03000000000000090000000000000000000000000000006e6574207469746c
65+650000001c008c0001005000f303000000000000000000000000000000000000
66+0000000001088d0003000000ef03000000000000090000000000000000000000
67+000000006e6574207469746c650000001c008d0001005000f303000000000000
68+0000000000000000000000000000000001088e0003000000ef03000000000000
69+090000000000000000000000000000006e6574207469746c650000001c008e00
70+01005000f3030000000000000000000000000000000000000000000001088f00
71+03000000ef03000000000000090000000000000000000000000000006e657420
72+7469746c650000001c008f0001005000f3030000000000000000000000000000
73+00000000000000000108900003000000ef030000000000000900000000000000
74+00000000000000006e6574207469746c650000001c00900001005000f3030000
75+00000000000000000000000000000000000000000108910003000000ef030000
76+00000000090000000000000000000000000000006e6574207469746c65000000
77+1c00910001005000f30300000000000000000000000000000000000000000000
78+0108920003000000ef0300000000000009000000000000000000000000000000
79+6e6574207469746c650000001c00920001005000f30300000000000000000000
80+0000000000000000000000000108930003000000ef0300000000000009000000
81+0000000000000000000000006e6574207469746c650000001c00930001005000
82+f303000000000000000000000000000000000000000000000108940003000000
83+ef03000000000000090000000000000000000000000000006e6574207469746c
84+650000001c00940001005000f303000000000000000000000000000000000000
85+000000000108950003000000ef03000000000000090000000000000000000000
86+000000006e6574207469746c650000001c00950001005000f303000000000000
87+000000000000000000000000000000000108960003000000ef03000000000000
88+090000000000000000000000000000006e6574207469746c650000001c009600
89+01005000f3030000000000000000000000000000000000000000000001089700
90+03000000ef03000000000000090000000000000000000000000000006e657420
91+7469746c650000001c00970001005000f3030000000000000000000000000000
92+00000000000000000108980003000000ef030000000000000900000000000000
93+00000000000000006e6574207469746c650000001c00980001005000f3030000
94+00000000000000000000000000000000000000000108990003000000ef030000
95+00000000090000000000000000000000000000006e6574207469746c65000000
96+1c00990001005000f30300000000000000000000000000000000000000000000
97+01089a0003000000ef0300000000000009000000000000000000000000000000
98+6e6574207469746c650000001c009a0001005000f30300000000000000000000
99+00000000000000000000000001089b0003000000ef0300000000000009000000
100+0000000000000000000000006e6574207469746c650000001c009b0001005000
101+f3030000000000000000000000000000000000000000000001089c0003000000
102+ef03000000000000090000000000000000000000000000006e6574207469746c
103+650000001c009c0001005000f303000000000000000000000000000000000000
104+0000000001089d0003000000ef03000000000000090000000000000000000000
105+000000006e6574207469746c650000001c009d0001005000f303000000000000
106+0000000000000000000000000000000001089e0003000000ef03000000000000
107+090000000000000000000000000000006e6574207469746c650000001c009e00
108+01005000f3030000000000000000000000000000000000000000000001089f00
109+03000000ef03000000000000090000000000000000000000000000006e657420
110+7469746c650000001c009f0001005000f3030000000000000000000000000000
111+00000000000000000108a00003000000ef030000000000000900000000000000
112+00000000000000006e6574207469746c650000001c00a00001005000f3030000
113+00000000000000000000000000000000000000000108a10003000000ef030000
114+00000000090000000000000000000000000000006e6574207469746c65000000
115+1c00a10001005000f30300000000000000000000000000000000000000000000
116+0108a20003000000ef0300000000000009000000000000000000000000000000
117+6e6574207469746c650000001c00a20001005000f30300000000000000000000
118+0000000000000000000000000108a30003000000ef0300000000000009000000
119+0000000000000000000000006e6574207469746c650000001c00a30001005000
120+f303000000000000000000000000000000000000000000000108a40003000000
121+ef03000000000000090000000000000000000000000000006e6574207469746c
122+650000001c00a40001005000f303000000000000000000000000000000000000
123+000000000108a50003000000ef03000000000000090000000000000000000000
124+000000006e6574207469746c650000001c00a50001005000f303000000000000
125+000000000000000000000000000000000108a60003000000ef03000000000000
126+090000000000000000000000000000006e6574207469746c650000001c00a600
127+01005000f303000000000000000000000000000000000000000000000108a700
128+03000000ef03000000000000090000000000000000000000000000006e657420
129+7469746c650000001c00a70001005000f3030000000000000000000000000000
130+00000000000000000108a80003000000ef030000000000000900000000000000
131+00000000000000006e6574207469746c650000001c00a80001005000f3030000
132+00000000000000000000000000000000000000000108a90003000000ef030000
133+00000000090000000000000000000000000000006e6574207469746c65000000
134+1c00a90001005000f30300000000000000000000000000000000000000000000
135+0108aa0003000000ef0300000000000009000000000000000000000000000000
136+6e6574207469746c650000001c00aa0001005000f30300000000000000000000
137+0000000000000000000000000108ab0003000000ef0300000000000009000000
138+0000000000000000000000006e6574207469746c650000001c00ab0001005000
139+f303000000000000000000000000000000000000000000000108ac0003000000
140+ef03000000000000090000000000000000000000000000006e6574207469746c
141+650000001c00ac0001005000f303000000000000000000000000000000000000
142+000000000108ad0003000000ef03000000000000090000000000000000000000
143+000000006e6574207469746c650000001c00ad0001005000f303000000000000
144+000000000000000000000000000000000108ae0003000000ef03000000000000
145+090000000000000000000000000000006e6574207469746c650000001c00ae00
146+01005000f303000000000000000000000000000000000000000000000108af00
147+03000000ef03000000000000090000000000000000000000000000006e657420
148+7469746c650000001c00af0001005000f3030000000000000000000000000000
149+00000000000000000108b00003000000ef030000000000000900000000000000
150+00000000000000006e6574207469746c650000001c00b00001005000f3030000
151+00000000000000000000000000000000000000000108b10003000000ef030000
152+00000000090000000000000000000000000000006e6574207469746c65000000
153+1c00b10001005000f30300000000000000000000000000000000000000000000
154+0108b20003000000ef0300000000000009000000000000000000000000000000
155+6e6574207469746c650000001c00b20001005000f30300000000000000000000
156+0000000000000000000000000108b30003000000ef0300000000000009000000
157+0000000000000000000000006e6574207469746c650000001c00b30001005000
158+f303000000000000000000000000000000000000000000000108b40003000000
159+ef03000000000000090000000000000000000000000000006e6574207469746c
160+650000001c00b40001005000f303000000000000000000000000000000000000
161+000000000108b50003000000ef03000000000000090000000000000000000000
162+000000006e6574207469746c650000001c00b50001005000f303000000000000
163+000000000000000000000000000000000108b60003000000ef03000000000000
164+090000000000000000000000000000006e6574207469746c650000001c00b600
165+01005000f303000000000000000000000000000000000000000000000108b700
166+03000000ef03000000000000090000000000000000000000000000006e657420
167+7469746c650000001c00b70001005000f3030000000000000000000000000000
168+00000000000000000108b80003000000ef030000000000000900000000000000
169+00000000000000006e6574207469746c650000001c00b80001005000f3030000
170+00000000000000000000000000000000000000000108b90003000000ef030000
171+00000000090000000000000000000000000000006e6574207469746c65000000
172+1c00b90001005000f30300000000000000000000000000000000000000000000
173+0108ba0003000000ef0300000000000009000000000000000000000000000000
174+6e6574207469746c650000001c00ba0001005000f30300000000000000000000
175+0000000000000000000000000108bb0003000000ef0300000000000009000000
176+0000000000000000000000006e6574207469746c650000001c00bb0001005000
177+f303000000000000000000000000000000000000000000000108bc0003000000
178+ef03000000000000090000000000000000000000000000006e6574207469746c
179+650000001c00bc0001005000f303000000000000000000000000000000000000
180+000000000108bd0003000000ef03000000000000090000000000000000000000
181+000000006e6574207469746c650000001c00bd0001005000f303000000000000
182+000000000000000000000000000000000108be0003000000ef03000000000000
183+090000000000000000000000000000006e6574207469746c650000001c00be00
184+01005000f303000000000000000000000000000000000000000000000108bf00
185+03000000ef03000000000000090000000000000000000000000000006e657420
186+7469746c650000001c00bf0001005000f3030000000000000000000000000000
187+00000000000000000108c00003000000ef030000000000000900000000000000
188+00000000000000006e6574207469746c650000001c00c00001005000f3030000
189+00000000000000000000000000000000000000000108c10003000000ef030000
190+00000000090000000000000000000000000000006e6574207469746c65000000
191+1c00c10001005000f30300000000000000000000000000000000000000000000
192+0108c20003000000ef0300000000000009000000000000000000000000000000
193+6e6574207469746c650000001c00c20001005000f30300000000000000000000
194+0000000000000000000000000108c30003000000ef0300000000000009000000
195+0000000000000000000000006e6574207469746c650000001c00c30001005000
196+f303000000000000000000000000000000000000000000000108c40003000000
197+ef03000000000000090000000000000000000000000000006e6574207469746c
198+650000001c00c40001005000f303000000000000000000000000000000000000
199+000000000108c50003000000ef03000000000000090000000000000000000000
200+000000006e6574207469746c650000001c00c50001005000f303000000000000
201+000000000000000000000000000000000108c60003000000ef03000000000000
202+090000000000000000000000000000006e6574207469746c650000001c00c600
203+01005000f303000000000000000000000000000000000000000000000108c700
204+03000000ef03000000000000090000000000000000000000000000006e657420
205+7469746c650000001c00c70001005000f3030000000000000000000000000000
206+00000000000000000108c80003000000ef030000000000000900000000000000
207+00000000000000006e6574207469746c650000001c00c80001005000f3030000
208+00000000000000000000000000000000000000000108c90003000000ef030000
209+00000000090000000000000000000000000000006e6574207469746c65000000
210+1c00c90001005000f30300000000000000000000000000000000000000000000
211+0108ca0003000000ef0300000000000009000000000000000000000000000000
212+6e6574207469746c650000001c00ca0001005000f30300000000000000000000
213+0000000000000000000000000108cb0003000000ef0300000000000009000000
214+0000000000000000000000006e6574207469746c650000001c00cb0001005000
215+f303000000000000000000000000000000000000000000000108cc0003000000
216+ef03000000000000090000000000000000000000000000006e6574207469746c
217+650000001c00cc0001005000f303000000000000000000000000000000000000
218+000000000108cd0003000000ef03000000000000090000000000000000000000
219+000000006e6574207469746c650000001c00cd0001005000f303000000000000
220+000000000000000000000000000000000108ce0003000000ef03000000000000
221+090000000000000000000000000000006e6574207469746c650000001c00ce00
222+01005000f303000000000000000000000000000000000000000000000108cf00
223+03000000ef03000000000000090000000000000000000000000000006e657420
224+7469746c650000001c00cf0001005000f3030000000000000000000000000000
225+00000000000000000108d00003000000ef030000000000000900000000000000
226+00000000000000006e6574207469746c650000001c00d00001005000f3030000
227+00000000000000000000000000000000000000000108d10003000000ef030000
228+00000000090000000000000000000000000000006e6574207469746c65000000
229+1c00d10001005000f30300000000000000000000000000000000000000000000
230+0108d20003000000ef0300000000000009000000000000000000000000000000
231+6e6574207469746c650000001c00d20001005000f30300000000000000000000
232+0000000000000000000000000108d30003000000ef0300000000000009000000
233+0000000000000000000000006e6574207469746c650000001c00d30001005000
234+f303000000000000000000000000000000000000000000000108d40003000000
235+ef03000000000000090000000000000000000000000000006e6574207469746c
236+650000001c00d40001005000f303000000000000000000000000000000000000
237+000000000108d50003000000ef03000000000000090000000000000000000000
238+000000006e6574207469746c650000001c00d50001005000f303000000000000
239+000000000000000000000000000000000108d60003000000ef03000000000000
240+090000000000000000000000000000006e6574207469746c650000001c00d600
241+01005000f303000000000000000000000000000000000000000000000108d700
242+03000000ef03000000000000090000000000000000000000000000006e657420
243+7469746c650000001c00d70001005000f3030000000000000000000000000000
244+00000000000000000108d80003000000ef030000000000000900000000000000
245+00000000000000006e6574207469746c650000001c00d80001005000f3030000
246+00000000000000000000000000000000000000000108d90003000000ef030000
247+00000000090000000000000000000000000000006e6574207469746c65000000
248+1c00d90001005000f30300000000000000000000000000000000000000000000
249+0108da0003000000ef0300000000000009000000000000000000000000000000
250+6e6574207469746c650000001c00da0001005000f30300000000000000000000
251+0000000000000000000000000108db0003000000ef0300000000000009000000
252+0000000000000000000000006e6574207469746c650000001c00db0001005000
253+f303000000000000000000000000000000000000000000000108dc0003000000
254+ef03000000000000090000000000000000000000000000006e6574207469746c
255+650000001c00dc0001005000f303000000000000000000000000000000000000
256+000000000108dd0003000000ef03000000000000090000000000000000000000
257+000000006e6574207469746c650000001c00dd0001005000f303000000000000
258+000000000000000000000000000000000108de0003000000ef03000000000000
259+090000000000000000000000000000006e6574207469746c650000001c00de00
260+01005000f303000000000000000000000000000000000000000000000108df00
261+03000000ef03000000000000090000000000000000000000000000006e657420
262+7469746c650000001c00df0001005000f3030000000000000000000000000000
263+00000000000000000108e00003000000ef030000000000000900000000000000
264+00000000000000006e6574207469746c650000001c00e00001005000f3030000
265+00000000000000000000000000000000000000000108e10003000000ef030000
266+00000000090000000000000000000000000000006e6574207469746c65000000
267+1c00e10001005000f30300000000000000000000000000000000000000000000
268+0108e20003000000ef0300000000000009000000000000000000000000000000
269+6e6574207469746c650000001c00e20001005000f30300000000000000000000
270+0000000000000000000000000108e30003000000ef0300000000000009000000
271+0000000000000000000000006e6574207469746c650000001c00e30001005000
272+f303000000000000000000000000000000000000000000000108e40003000000
273+ef03000000000000090000000000000000000000000000006e6574207469746c
274+650000001c00e40001005000f303000000000000000000000000000000000000
275+000000000108e50003000000ef03000000000000090000000000000000000000
276+000000006e6574207469746c650000001c00e50001005000f303000000000000
277+000000000000000000000000000000000108e60003000000ef03000000000000
278+090000000000000000000000000000006e6574207469746c650000001c00e600
279+01005000f303000000000000000000000000000000000000000000000108e700
280+03000000ef03000000000000090000000000000000000000000000006e657420
281+7469746c650000001c00e70001005000f3030000000000000000000000000000
282+00000000000000000108e80003000000ef030000000000000900000000000000
283+00000000000000006e6574207469746c650000001c00e80001005000f3030000
284+00000000000000000000000000000000000000000108e90003000000ef030000
285+00000000090000000000000000000000000000006e6574207469746c65000000
286+1c00e90001005000f30300000000000000000000000000000000000000000000
287+0108ea0003000000ef0300000000000009000000000000000000000000000000
288+6e6574207469746c650000001c00ea0001005000f30300000000000000000000
289+0000000000000000000000000108eb0003000000ef0300000000000009000000
290+0000000000000000000000006e6574207469746c650000001c00eb0001005000
291+f303000000000000000000000000000000000000000000000108ec0003000000
292+ef03000000000000090000000000000000000000000000006e6574207469746c
293+650000001c00ec0001005000f303000000000000000000000000000000000000
294+000000000108ed0003000000ef03000000000000090000000000000000000000
295+000000006e6574207469746c650000001c00ed0001005000f303000000000000
296+000000000000000000000000000000000108ee0003000000ef03000000000000
297+090000000000000000000000000000006e6574207469746c650000001c00ee00
298+01005000f303000000000000000000000000000000000000000000000108ef00
299+03000000ef03000000000000090000000000000000000000000000006e657420
300+7469746c650000001c00ef0001005000f3030000000000000000000000000000
301+00000000000000000108f00003000000ef030000000000000900000000000000
302+00000000000000006e6574207469746c650000001c00f00001005000f3030000
303+00000000000000000000000000000000000000000108f10003000000ef030000
304+00000000090000000000000000000000000000006e6574207469746c65000000
305+1c00f10001005000f30300000000000000000000000000000000000000000000
306+0108f20003000000ef0300000000000009000000000000000000000000000000
307+6e6574207469746c650000001c00f20001005000f30300000000000000000000
308+0000000000000000000000000108f30003000000ef0300000000000009000000
309+0000000000000000000000006e6574207469746c650000001c00f30001005000
310+f303000000000000000000000000000000000000000000000108f40003000000
311+ef03000000000000090000000000000000000000000000006e6574207469746c
312+650000001c00f40001005000f303000000000000000000000000000000000000
313+000000000108f50003000000ef03000000000000090000000000000000000000
314+000000006e6574207469746c650000001c00f50001005000f303000000000000
315+000000000000000000000000000000000108f60003000000ef03000000000000
316+090000000000000000000000000000006e6574207469746c650000001c00f600
317+01005000f303000000000000000000000000000000000000000000000108f700
318+03000000ef03000000000000090000000000000000000000000000006e657420
319+7469746c650000001c00f70001005000f3030000000000000000000000000000
320+00000000000000000108f80003000000ef030000000000000900000000000000
321+00000000000000006e6574207469746c650000001c00f80001005000f3030000
322+00000000000000000000000000000000000000000108f90003000000ef030000
323+00000000090000000000000000000000000000006e6574207469746c65000000
324+1c00f90001005000f30300000000000000000000000000000000000000000000
325+0108fa0003000000ef0300000000000009000000000000000000000000000000
326+6e6574207469746c650000001c00fa0001005000f30300000000000000000000
327+0000000000000000000000000108fb0003000000ef0300000000000009000000
328+0000000000000000000000006e6574207469746c650000001c00fb0001005000
329+f303000000000000000000000000000000000000000000000108fc0003000000
330+ef03000000000000090000000000000000000000000000006e6574207469746c
331+650000001c00fc0001005000f303000000000000000000000000000000000000
332+000000000108fd0003000000ef03000000000000090000000000000000000000
333+000000006e6574207469746c650000001c00fd0001005000f303000000000000
334+000000000000000000000000000000000108fe0003000000ef03000000000000
335+090000000000000000000000000000006e6574207469746c650000001c00fe00
336+01005000f303000000000000000000000000000000000000000000000108ff00
337+03000000ef03000000000000090000000000000000000000000000006e657420
338+7469746c650000001c00ff0001005000f3030000000000000000000000000000
339+00000000000000000108000103000000ef030000000000000900000000000000
340+00000000000000006e6574207469746c650000001c00000101005000f3030000
341+00000000000000000000000000000000000000000108010103000000ef030000
342+00000000090000000000000000000000000000006e6574207469746c65000000
343+1c00010101005000f30300000000000000000000000000000000000000000000
344+0108020103000000ef0300000000000009000000000000000000000000000000
345+6e6574207469746c650000001c00020101005000f30300000000000000000000
346+0000000000000000000000000108030103000000ef0300000000000009000000
347+0000000000000000000000006e6574207469746c650000001c00030101005000
348+f303000000000000000000000000000000000000000000000108040103000000
349+ef03000000000000090000000000000000000000000000006e6574207469746c
350+650000001c00040101005000f303000000000000000000000000000000000000
351+000000000108050103000000ef03000000000000090000000000000000000000
352+000000006e6574207469746c650000001c00050101005000f303000000000000
353+000000000000000000000000000000000108060103000000ef03000000000000
354+090000000000000000000000000000006e6574207469746c650000001c000601
355+01005000f3030000000000000000000000000000000000000000000001080701
356+03000000ef03000000000000090000000000000000000000000000006e657420
357+7469746c650000001c00070101005000f3030000000000000000000000000000
358+00000000000000000108080103000000ef030000000000000900000000000000
359+00000000000000006e6574207469746c650000001c00080101005000f3030000
360+00000000000000000000000000000000000000000108090103000000ef030000
361+00000000090000000000000000000000000000006e6574207469746c65000000
362+1c00090101005000f30300000000000000000000000000000000000000000000
363+01080a0103000000ef0300000000000009000000000000000000000000000000
364+6e6574207469746c650000001c000a0101005000f30300000000000000000000
365+00000000000000000000000001080b0103000000ef0300000000000009000000
366+0000000000000000000000006e6574207469746c650000001c000b0101005000
367+f3030000000000000000000000000000000000000000000001080c0103000000
368+ef03000000000000090000000000000000000000000000006e6574207469746c
369+650000001c000c0101005000f303000000000000000000000000000000000000
370+0000000001080d0103000000ef03000000000000090000000000000000000000
371+000000006e6574207469746c650000001c000d0101005000f303000000000000
372+0000000000000000000000000000000001080e0103000000ef03000000000000
373+090000000000000000000000000000006e6574207469746c650000001c000e01
374+01005000f3030000000000000000000000000000000000000000000001080f01
375+03000000ef03000000000000090000000000000000000000000000006e657420
376+7469746c650000001c000f0101005000f3030000000000000000000000000000
377+00000000000000000108100103000000ef030000000000000900000000000000
378+00000000000000006e6574207469746c650000001c00100101005000f3030000
379+00000000000000000000000000000000000000000108110103000000ef030000
380+00000000090000000000000000000000000000006e6574207469746c65000000
381+1c00110101005000f30300000000000000000000000000000000000000000000
382+0108120103000000ef0300000000000009000000000000000000000000000000
383+6e6574207469746c650000001c00120101005000f30300000000000000000000
384+0000000000000000000000000108130103000000ef0300000000000009000000
385+0000000000000000000000006e6574207469746c650000001c00130101005000
386+f303000000000000000000000000000000000000000000000108140103000000
387+ef03000000000000090000000000000000000000000000006e6574207469746c
388+650000001c00140101005000f303000000000000000000000000000000000000
389+000000000108150103000000ef03000000000000090000000000000000000000
390+000000006e6574207469746c650000001c00150101005000f303000000000000
391+000000000000000000000000000000000108160103000000ef03000000000000
392+090000000000000000000000000000006e6574207469746c650000001c001601
393+01005000f3030000000000000000000000000000000000000000000001081701
394+03000000ef03000000000000090000000000000000000000000000006e657420
395+7469746c650000001c00170101005000f3030000000000000000000000000000
396+00000000000000000108180103000000ef030000000000000900000000000000
397+00000000000000006e6574207469746c650000001c00180101005000f3030000
398+00000000000000000000000000000000000000000108190103000000ef030000
399+00000000090000000000000000000000000000006e6574207469746c65000000
400+1c00190101005000f30300000000000000000000000000000000000000000000
401+01081a0103000000ef0300000000000009000000000000000000000000000000
402+6e6574207469746c650000001c001a0101005000f30300000000000000000000
403+00000000000000000000000001081b0103000000ef0300000000000009000000
404+0000000000000000000000006e6574207469746c650000001c001b0101005000
405+f3030000000000000000000000000000000000000000000001081c0103000000
406+ef03000000000000090000000000000000000000000000006e6574207469746c
407+650000001c001c0101005000f303000000000000000000000000000000000000
408+0000000001081d0103000000ef03000000000000090000000000000000000000
409+000000006e6574207469746c650000001c001d0101005000f303000000000000
410+0000000000000000000000000000000001081e0103000000ef03000000000000
411+090000000000000000000000000000006e6574207469746c650000001c001e01
412+01005000f3030000000000000000000000000000000000000000000001081f01
413+03000000ef03000000000000090000000000000000000000000000006e657420
414+7469746c650000001c001f0101005000f3030000000000000000000000000000
415+00000000000000000108200103000000ef030000000000000900000000000000
416+00000000000000006e6574207469746c650000001c00200101005000f3030000
417+00000000000000000000000000000000000000000108210103000000ef030000
418+00000000090000000000000000000000000000006e6574207469746c65000000
419+1c00210101005000f30300000000000000000000000000000000000000000000
420+0108220103000000ef0300000000000009000000000000000000000000000000
421+6e6574207469746c650000001c00220101005000f30300000000000000000000
422+0000000000000000000000000108230103000000ef0300000000000009000000
423+0000000000000000000000006e6574207469746c650000001c00230101005000
424+f303000000000000000000000000000000000000000000000108240103000000
425+ef03000000000000090000000000000000000000000000006e6574207469746c
426+650000001c00240101005000f303000000000000000000000000000000000000
427+000000000108250103000000ef03000000000000090000000000000000000000
428+000000006e6574207469746c650000001c00250101005000f303000000000000
429+000000000000000000000000000000000108260103000000ef03000000000000
430+090000000000000000000000000000006e6574207469746c650000001c002601
431+01005000f3030000000000000000000000000000000000000000000001082701
432+03000000ef03000000000000090000000000000000000000000000006e657420
433+7469746c650000001c00270101005000f3030000000000000000000000000000
434+00000000000000000108280103000000ef030000000000000900000000000000
435+00000000000000006e6574207469746c650000001c00280101005000f3030000
436+00000000000000000000000000000000000000000108290103000000ef030000
437+00000000090000000000000000000000000000006e6574207469746c65000000
438+1c00290101005000f30300000000000000000000000000000000000000000000
439+01082a0103000000ef0300000000000009000000000000000000000000000000
440+6e6574207469746c650000001c002a0101005000f30300000000000000000000
441+00000000000000000000000001082b0103000000ef0300000000000009000000
442+0000000000000000000000006e6574207469746c650000001c002b0101005000
443+f3030000000000000000000000000000000000000000000001082c0103000000
444+ef03000000000000090000000000000000000000000000006e6574207469746c
445+650000001c002c0101005000f303000000000000000000000000000000000000
446+0000000001082d0103000000ef03000000000000090000000000000000000000
447+000000006e6574207469746c650000001c002d0101005000f303000000000000
448+0000000000000000000000000000000001082e0103000000ef03000000000000
449+090000000000000000000000000000006e6574207469746c650000001c002e01
450+01005000f3030000000000000000000000000000000000000000000001082f01
451+03000000ef03000000000000090000000000000000000000000000006e657420
452+7469746c650000001c002f0101005000f3030000000000000000000000000000
453+00000000000000000108300103000000ef030000000000000900000000000000
454+00000000000000006e6574207469746c650000001c00300101005000f3030000
455+00000000000000000000000000000000000000000108310103000000ef030000
456+00000000090000000000000000000000000000006e6574207469746c65000000
457+1c00310101005000f30300000000000000000000000000000000000000000000
458+0108320103000000ef0300000000000009000000000000000000000000000000
459+6e6574207469746c650000001c00320101005000f30300000000000000000000
460+0000000000000000000000000108330103000000ef0300000000000009000000
461+0000000000000000000000006e6574207469746c650000001c00330101005000
462+f303000000000000000000000000000000000000000000000108340103000000
463+ef03000000000000090000000000000000000000000000006e6574207469746c
464+650000001c00340101005000f303000000000000000000000000000000000000
465+000000000108350103000000ef03000000000000090000000000000000000000
466+000000006e6574207469746c650000001c00350101005000f303000000000000
467+000000000000000000000000000000000108360103000000ef03000000000000
468+090000000000000000000000000000006e6574207469746c650000001c003601
469+01005000f3030000000000000000000000000000000000000000000001083701
470+03000000ef03000000000000090000000000000000000000000000006e657420
471+7469746c650000001c00370101005000f3030000000000000000000000000000
472+00000000000000000108380103000000ef030000000000000900000000000000
473+00000000000000006e6574207469746c650000001c00380101005000f3030000
474+00000000000000000000000000000000000000000108390103000000ef030000
475+00000000090000000000000000000000000000006e6574207469746c65000000
476+1c00390101005000f30300000000000000000000000000000000000000000000
477+01083a0103000000ef0300000000000009000000000000000000000000000000
478+6e6574207469746c650000001c003a0101005000f30300000000000000000000
479+00000000000000000000000001083b0103000000ef0300000000000009000000
480+0000000000000000000000006e6574207469746c650000001c003b0101005000
481+f3030000000000000000000000000000000000000000000001083c0103000000
482+ef03000000000000090000000000000000000000000000006e6574207469746c
483+650000001c003c0101005000f303000000000000000000000000000000000000
484+0000000001083d0103000000ef03000000000000090000000000000000000000
485+000000006e6574207469746c650000001c003d0101005000f303000000000000
486+0000000000000000000000000000000001083e0103000000ef03000000000000
487+090000000000000000000000000000006e6574207469746c650000001c003e01
488+01005000f3030000000000000000000000000000000000000000000001083f01
489+03000000ef03000000000000090000000000000000000000000000006e657420
490+7469746c650000001c003f0101005000f3030000000000000000000000000000
491+00000000000000000108400103000000ef030000000000000900000000000000
492+00000000000000006e6574207469746c650000001c00400101005000f3030000
493+00000000000000000000000000000000000000000108410103000000ef030000
494+00000000090000000000000000000000000000006e6574207469746c65000000
495+1c00410101005000f30300000000000000000000000000000000000000000000
496+0108420103000000ef0300000000000009000000000000000000000000000000
497+6e6574207469746c650000001c00420101005000f30300000000000000000000
498+0000000000000000000000000108430103000000ef0300000000000009000000
499+0000000000000000000000006e6574207469746c650000001c00430101005000
500+f303000000000000000000000000000000000000000000000108440103000000
501+ef03000000000000090000000000000000000000000000006e6574207469746c
502+650000001c00440101005000f303000000000000000000000000000000000000
503+000000000108450103000000ef03000000000000090000000000000000000000
504+000000006e6574207469746c650000001c00450101005000f303000000000000
505+000000000000000000000000000000000108460103000000ef03000000000000
506+090000000000000000000000000000006e6574207469746c650000001c004601
507+01005000f3030000000000000000000000000000000000000000000001084701
508+03000000ef03000000000000090000000000000000000000000000006e657420
509+7469746c650000001c00470101005000f3030000000000000000000000000000
510+00000000000000000108480103000000ef030000000000000900000000000000
511+00000000000000006e6574207469746c650000001c00480101005000f3030000
512+00000000000000000000000000000000000000000108490103000000ef030000
513+00000000090000000000000000000000000000006e6574207469746c65000000
514+1c00490101005000f30300000000000000000000000000000000000000000000
515+01084a0103000000ef0300000000000009000000000000000000000000000000
516+6e6574207469746c650000001c004a0101005000f30300000000000000000000
517+00000000000000000000000001084b0103000000ef0300000000000009000000
518+0000000000000000000000006e6574207469746c650000001c004b0101005000
519+f3030000000000000000000000000000000000000000000001084c0103000000
520+ef03000000000000090000000000000000000000000000006e6574207469746c
521+650000001c004c0101005000f303000000000000000000000000000000000000
522+0000000001084d0103000000ef03000000000000090000000000000000000000
523+000000006e6574207469746c650000001c004d0101005000f303000000000000
524+0000000000000000000000000000000001084e0103000000ef03000000000000
525+090000000000000000000000000000006e6574207469746c650000001c004e01
526+01005000f3030000000000000000000000000000000000000000000001084f01
527+03000000ef03000000000000090000000000000000000000000000006e657420
528+7469746c650000001c004f0101005000f3030000000000000000000000000000
529+00000000000000000108500103000000ef030000000000000900000000000000
530+00000000000000006e6574207469746c650000001c00500101005000f3030000
531+00000000000000000000000000000000000000000108510103000000ef030000
532+00000000090000000000000000000000000000006e6574207469746c65000000
533+1c00510101005000f30300000000000000000000000000000000000000000000
534+0108520103000000ef0300000000000009000000000000000000000000000000
535+6e6574207469746c650000001c00520101005000f30300000000000000000000
536+0000000000000000000000000108530103000000ef0300000000000009000000
537+0000000000000000000000006e6574207469746c650000001c00530101005000
538+f303000000000000000000000000000000000000000000000108540103000000
539+ef03000000000000090000000000000000000000000000006e6574207469746c
540+650000001c00540101005000f303000000000000000000000000000000000000
541+000000000108550103000000ef03000000000000090000000000000000000000
542+000000006e6574207469746c650000001c00550101005000f303000000000000
543+000000000000000000000000000000000108560103000000ef03000000000000
544+090000000000000000000000000000006e6574207469746c650000001c005601
545+01005000f3030000000000000000000000000000000000000000000001085701
546+03000000ef03000000000000090000000000000000000000000000006e657420
547+7469746c650000001c00570101005000f3030000000000000000000000000000
548+00000000000000000108580103000000ef030000000000000900000000000000
549+00000000000000006e6574207469746c650000001c00580101005000f3030000
550+00000000000000000000000000000000000000000108590103000000ef030000
551+00000000090000000000000000000000000000006e6574207469746c65000000
552+1c00590101005000f30300000000000000000000000000000000000000000000
553+01085a0103000000ef0300000000000009000000000000000000000000000000
554+6e6574207469746c650000001c005a0101005000f30300000000000000000000
555+00000000000000000000000001085b0103000000ef0300000000000009000000
556+0000000000000000000000006e6574207469746c650000001c005b0101005000
557+f3030000000000000000000000000000000000000000000001085c0103000000
558+ef03000000000000090000000000000000000000000000006e6574207469746c
559+650000001c005c0101005000f303000000000000000000000000000000000000
560+0000000001085d0103000000ef03000000000000090000000000000000000000
561+000000006e6574207469746c650000001c005d0101005000f303000000000000
562+0000000000000000000000000000000001085e0103000000ef03000000000000
563+090000000000000000000000000000006e6574207469746c650000001c005e01
564+01005000f3030000000000000000000000000000000000000000000001085f01
565+03000000ef03000000000000090000000000000000000000000000006e657420
566+7469746c650000001c005f0101005000f3030000000000000000000000000000
567+00000000000000000108600103000000ef030000000000000900000000000000
568+00000000000000006e6574207469746c650000001c00600101005000f3030000
569+00000000000000000000000000000000000000000108610103000000ef030000
570+00000000090000000000000000000000000000006e6574207469746c65000000
571+1c00610101005000f30300000000000000000000000000000000000000000000
572+0108620103000000ef0300000000000009000000000000000000000000000000
573+6e6574207469746c650000001c00620101005000f30300000000000000000000
574+0000000000000000000000000108630103000000ef0300000000000009000000
575+0000000000000000000000006e6574207469746c650000001c00630101005000
576+f303000000000000000000000000000000000000000000000108640103000000
577+ef03000000000000090000000000000000000000000000006e6574207469746c
578+650000001c00640101005000f303000000000000000000000000000000000000
579+000000000108650103000000ef03000000000000090000000000000000000000
580+000000006e6574207469746c650000001c00650101005000f303000000000000
581+000000000000000000000000000000000108660103000000ef03000000000000
582+090000000000000000000000000000006e6574207469746c650000001c006601
583+01005000f3030000000000000000000000000000000000000000000001086701
584+03000000ef03000000000000090000000000000000000000000000006e657420
585+7469746c650000001c00670101005000f3030000000000000000000000000000
586+00000000000000000108680103000000ef030000000000000900000000000000
587+00000000000000006e6574207469746c650000001c00680101005000f3030000
588+00000000000000000000000000000000000000000108690103000000ef030000
589+00000000090000000000000000000000000000006e6574207469746c65000000
590+1c00690101005000f30300000000000000000000000000000000000000000000
591+01086a0103000000ef0300000000000009000000000000000000000000000000
592+6e6574207469746c650000001c006a0101005000f30300000000000000000000
593+00000000000000000000000001086b0103000000ef0300000000000009000000
594+0000000000000000000000006e6574207469746c650000001c006b0101005000
595+f3030000000000000000000000000000000000000000000001086c0103000000
596+ef03000000000000090000000000000000000000000000006e6574207469746c
597+650000001c006c0101005000f303000000000000000000000000000000000000
598+0000000001086d0103000000ef03000000000000090000000000000000000000
599+000000006e6574207469746c650000001c006d0101005000f303000000000000
600+0000000000000000000000000000000001086e0103000000ef03000000000000
601+090000000000000000000000000000006e6574207469746c650000001c006e01
602+01005000f3030000000000000000000000000000000000000000000001086f01
603+03000000ef03000000000000090000000000000000000000000000006e657420
604+7469746c650000001c006f0101005000f3030000000000000000000000000000
605+00000000000000000108700103000000ef030000000000000900000000000000
606+00000000000000006e6574207469746c650000001c00700101005000f3030000
607+00000000000000000000000000000000000000000108710103000000ef030000
608+00000000090000000000000000000000000000006e6574207469746c65000000
609+1c00710101005000f30300000000000000000000000000000000000000000000
610+0108720103000000ef0300000000000009000000000000000000000000000000
611+6e6574207469746c650000001c00720101005000f30300000000000000000000
612+0000000000000000000000000108730103000000ef0300000000000009000000
613+0000000000000000000000006e6574207469746c650000001c00730101005000
614+f303000000000000000000000000000000000000000000000108740103000000
615+ef03000000000000090000000000000000000000000000006e6574207469746c
616+650000001c00740101005000f303000000000000000000000000000000000000
617+000000000108750103000000ef03000000000000090000000000000000000000
618+000000006e6574207469746c650000001c00750101005000f303000000000000
619+000000000000000000000000000000000108760103000000ef03000000000000
620+090000000000000000000000000000006e6574207469746c650000001c007601
621+01005000f3030000000000000000000000000000000000000000000001087701
622+03000000ef03000000000000090000000000000000000000000000006e657420
623+7469746c650000001c00770101005000f3030000000000000000000000000000
624+00000000000000000108780103000000ef030000000000000900000000000000
625+00000000000000006e6574207469746c650000001c00780101005000f3030000
626+00000000000000000000000000000000000000000108790103000000ef030000
627+00000000090000000000000000000000000000006e6574207469746c65000000
628+1c00790101005000f30300000000000000000000000000000000000000000000
629+01087a0103000000ef0300000000000009000000000000000000000000000000
630+6e6574207469746c650000001c007a0101005000f30300000000000000000000
631+00000000000000000000000001087b0103000000ef0300000000000009000000
632+0000000000000000000000006e6574207469746c650000001c007b0101005000
633+f3030000000000000000000000000000000000000000000001087c0103000000
634+ef03000000000000090000000000000000000000000000006e6574207469746c
635+650000001c007c0101005000f303000000000000000000000000000000000000
636+0000000001087d0103000000ef03000000000000090000000000000000000000
637+000000006e6574207469746c650000001c007d0101005000f303000000000000
638+0000000000000000000000000000000001087e0103000000ef03000000000000
639+090000000000000000000000000000006e6574207469746c650000001c007e01
640+01005000f3030000000000000000000000000000000000000000000001087f01
641+03000000ef03000000000000090000000000000000000000000000006e657420
642+7469746c650000001c007f0101005000f3030000000000000000000000000000
643+00000000000000000108800103000000ef030000000000000900000000000000
644+00000000000000006e6574207469746c650000001c00800101005000f3030000
645+00000000000000000000000000000000000000000108810103000000ef030000
646+00000000090000000000000000000000000000006e6574207469746c65000000
647+1c00810101005000f30300000000000000000000000000000000000000000000
648+0108820103000000ef0300000000000009000000000000000000000000000000
649+6e6574207469746c650000001c00820101005000f30300000000000000000000
650+0000000000000000000000000108830103000000ef0300000000000009000000
651+0000000000000000000000006e6574207469746c650000001c00830101005000
652+f303000000000000000000000000000000000000000000000108840103000000
653+ef03000000000000090000000000000000000000000000006e6574207469746c
654+650000001c00840101005000f303000000000000000000000000000000000000
655+000000000108850103000000ef03000000000000090000000000000000000000
656+000000006e6574207469746c650000001c00850101005000f303000000000000
657+000000000000000000000000000000000108860103000000ef03000000000000
658+090000000000000000000000000000006e6574207469746c650000001c008601
659+01005000f3030000000000000000000000000000000000000000000001088701
660+03000000ef03000000000000090000000000000000000000000000006e657420
661+7469746c650000001c00870101005000f3030000000000000000000000000000
662+00000000000000000108880103000000ef030000000000000900000000000000
663+00000000000000006e6574207469746c650000001c00880101005000f3030000
664+00000000000000000000000000000000000000000108890103000000ef030000
665+00000000090000000000000000000000000000006e6574207469746c65000000
666+1c00890101005000f30300000000000000000000000000000000000000000000
667+01088a0103000000ef0300000000000009000000000000000000000000000000
668+6e6574207469746c650000001c008a0101005000f30300000000000000000000
669+00000000000000000000000001088b0103000000ef0300000000000009000000
670+0000000000000000000000006e6574207469746c650000001c008b0101005000
671+f3030000000000000000000000000000000000000000000001088c0103000000
672+ef03000000000000090000000000000000000000000000006e6574207469746c
673+650000001c008c0101005000f303000000000000000000000000000000000000
674+0000000001088d0103000000ef03000000000000090000000000000000000000
675+000000006e6574207469746c650000001c008d0101005000f303000000000000
676+0000000000000000000000000000000001088e0103000000ef03000000000000
677+090000000000000000000000000000006e6574207469746c650000001c008e01
678+01005000f3030000000000000000000000000000000000000000000001088f01
679+03000000ef03000000000000090000000000000000000000000000006e657420
680+7469746c650000001c008f0101005000f3030000000000000000000000000000
681+00000000000000000108900103000000ef030000000000000900000000000000
682+00000000000000006e6574207469746c650000001c00900101005000f3030000
683+00000000000000000000000000000000000000000108910103000000ef030000
684+00000000090000000000000000000000000000006e6574207469746c65000000
685+1c00910101005000f30300000000000000000000000000000000000000000000
686+0108920103000000ef0300000000000009000000000000000000000000000000
687+6e6574207469746c650000001c00920101005000f30300000000000000000000
688+0000000000000000000000000108930103000000ef0300000000000009000000
689+0000000000000000000000006e6574207469746c650000001c00930101005000
690+f303000000000000000000000000000000000000000000000108940103000000
691+ef03000000000000090000000000000000000000000000006e6574207469746c
692+650000001c00940101005000f303000000000000000000000000000000000000
693+000000000108950103000000ef03000000000000090000000000000000000000
694+000000006e6574207469746c650000001c00950101005000f303000000000000
695+000000000000000000000000000000000108960103000000ef03000000000000
696+090000000000000000000000000000006e6574207469746c650000001c009601
697+01005000f3030000000000000000000000000000000000000000000001089701
698+03000000ef03000000000000090000000000000000000000000000006e657420
699+7469746c650000001c00970101005000f3030000000000000000000000000000
700+00000000000000000108980103000000ef030000000000000900000000000000
701+00000000000000006e6574207469746c650000001c00980101005000f3030000
702+00000000000000000000000000000000000000000108990103000000ef030000
703+00000000090000000000000000000000000000006e6574207469746c65000000
704+1c00990101005000f30300000000000000000000000000000000000000000000
705+01089a0103000000ef0300000000000009000000000000000000000000000000
706+6e6574207469746c650000001c009a0101005000f30300000000000000000000
707+00000000000000000000000001089b0103000000ef0300000000000009000000
708+0000000000000000000000006e6574207469746c650000001c009b0101005000
709+f3030000000000000000000000000000000000000000000001089c0103000000
710+ef03000000000000090000000000000000000000000000006e6574207469746c
711+650000001c009c0101005000f303000000000000000000000000000000000000
712+0000000001089d0103000000ef03000000000000090000000000000000000000
713+000000006e6574207469746c650000001c009d0101005000f303000000000000
714+0000000000000000000000000000000001089e0103000000ef03000000000000
715+090000000000000000000000000000006e6574207469746c650000001c009e01
716+01005000f3030000000000000000000000000000000000000000000001089f01
717+03000000ef03000000000000090000000000000000000000000000006e657420
718+7469746c650000001c009f0101005000f3030000000000000000000000000000
719+00000000000000000108a00103000000ef030000000000000900000000000000
720+00000000000000006e6574207469746c650000001c00a00101005000f3030000
721+00000000000000000000000000000000000000000108a10103000000ef030000
722+00000000090000000000000000000000000000006e6574207469746c65000000
723+1c00a10101005000f30300000000000000000000000000000000000000000000
724+0108a20103000000ef0300000000000009000000000000000000000000000000
725+6e6574207469746c650000001c00a20101005000f30300000000000000000000
726+0000000000000000000000000108a30103000000ef0300000000000009000000
727+0000000000000000000000006e6574207469746c650000001c00a30101005000
728+f303000000000000000000000000000000000000000000000108a40103000000
729+ef03000000000000090000000000000000000000000000006e6574207469746c
730+650000001c00a40101005000f303000000000000000000000000000000000000
731+000000000108a50103000000ef03000000000000090000000000000000000000
732+000000006e6574207469746c650000001c00a50101005000f303000000000000
733+000000000000000000000000000000000108a60103000000ef03000000000000
734+090000000000000000000000000000006e6574207469746c650000001c00a601
735+01005000f303000000000000000000000000000000000000000000000108a701
736+03000000ef03000000000000090000000000000000000000000000006e657420
737+7469746c650000001c00a70101005000f3030000000000000000000000000000
738+00000000000000000108a80103000000ef030000000000000900000000000000
739+00000000000000006e6574207469746c650000001c00a80101005000f3030000
740+00000000000000000000000000000000000000000108a90103000000ef030000
741+00000000090000000000000000000000000000006e6574207469746c65000000
742+1c00a90101005000f30300000000000000000000000000000000000000000000
743+0108aa0103000000ef0300000000000009000000000000000000000000000000
744+6e6574207469746c650000001c00aa0101005000f30300000000000000000000
745+0000000000000000000000000108ab0103000000ef0300000000000009000000
746+0000000000000000000000006e6574207469746c650000001c00ab0101005000
747+f303000000000000000000000000000000000000000000000108ac0103000000
748+ef03000000000000090000000000000000000000000000006e6574207469746c
749+650000001c00ac0101005000f303000000000000000000000000000000000000
750+000000000108ad0103000000ef03000000000000090000000000000000000000
751+000000006e6574207469746c650000001c00ad0101005000f303000000000000
752+000000000000000000000000000000000108ae0103000000ef03000000000000
753+090000000000000000000000000000006e6574207469746c650000001c00ae01
754+01005000f303000000000000000000000000000000000000000000000108af01
755+03000000ef03000000000000090000000000000000000000000000006e657420
756+7469746c650000001c00af0101005000f3030000000000000000000000000000
757+00000000000000000108b00103000000ef030000000000000900000000000000
758+00000000000000006e6574207469746c650000001c00b00101005000f3030000
759+00000000000000000000000000000000000000000108b10103000000ef030000
760+00000000090000000000000000000000000000006e6574207469746c65000000
761+1c00b10101005000f30300000000000000000000000000000000000000000000
762+0108b20103000000ef0300000000000009000000000000000000000000000000
763+6e6574207469746c650000001c00b20101005000f30300000000000000000000
764+0000000000000000000000000108b30103000000ef0300000000000009000000
765+0000000000000000000000006e6574207469746c650000001c00b30101005000
766+f303000000000000000000000000000000000000000000000108b40103000000
767+ef03000000000000090000000000000000000000000000006e6574207469746c
768+650000001c00b40101005000f303000000000000000000000000000000000000
769+000000000108b50103000000ef03000000000000090000000000000000000000
770+000000006e6574207469746c650000001c00b50101005000f303000000000000
771+000000000000000000000000000000000108b60103000000ef03000000000000
772+090000000000000000000000000000006e6574207469746c650000001c00b601
773+01005000f303000000000000000000000000000000000000000000000108b701
774+03000000ef03000000000000090000000000000000000000000000006e657420
775+7469746c650000001c00b70101005000f3030000000000000000000000000000
776+00000000000000000108b80103000000ef030000000000000900000000000000
777+00000000000000006e6574207469746c650000001c00b80101005000f3030000
778+00000000000000000000000000000000000000000108b90103000000ef030000
779+00000000090000000000000000000000000000006e6574207469746c65000000
780+1c00b90101005000f30300000000000000000000000000000000000000000000
781+0108ba0103000000ef0300000000000009000000000000000000000000000000
782+6e6574207469746c650000001c00ba0101005000f30300000000000000000000
783+0000000000000000000000000108bb0103000000ef0300000000000009000000
784+0000000000000000000000006e6574207469746c650000001c00bb0101005000
785+f303000000000000000000000000000000000000000000000108bc0103000000
786+ef03000000000000090000000000000000000000000000006e6574207469746c
787+650000001c00bc0101005000f303000000000000000000000000000000000000
788+000000000108bd0103000000ef03000000000000090000000000000000000000
789+000000006e6574207469746c650000001c00bd0101005000f303000000000000
790+000000000000000000000000000000000108be0103000000ef03000000000000
791+090000000000000000000000000000006e6574207469746c650000001c00be01
792+01005000f303000000000000000000000000000000000000000000000108bf01
793+03000000ef03000000000000090000000000000000000000000000006e657420
794+7469746c650000001c00bf0101005000f3030000000000000000000000000000
795+00000000000000000108c00103000000ef030000000000000900000000000000
796+00000000000000006e6574207469746c650000001c00c00101005000f3030000
797+00000000000000000000000000000000000000000108c10103000000ef030000
798+00000000090000000000000000000000000000006e6574207469746c65000000
799+1c00c10101005000f30300000000000000000000000000000000000000000000
800+0108c20103000000ef0300000000000009000000000000000000000000000000
801+6e6574207469746c650000001c00c20101005000f30300000000000000000000
802+0000000000000000000000000108c30103000000ef0300000000000009000000
803+0000000000000000000000006e6574207469746c650000001c00c30101005000
804+f303000000000000000000000000000000000000000000000108c40103000000
805+ef03000000000000090000000000000000000000000000006e6574207469746c
806+650000001c00c40101005000f303000000000000000000000000000000000000
807+000000000108c50103000000ef03000000000000090000000000000000000000
808+000000006e6574207469746c650000001c00c50101005000f303000000000000
809+000000000000000000000000000000000108c60103000000ef03000000000000
810+090000000000000000000000000000006e6574207469746c650000001c00c601
811+01005000f303000000000000000000000000000000000000000000000108c701
812+03000000ef03000000000000090000000000000000000000000000006e657420
813+7469746c650000001c00c70101005000f3030000000000000000000000000000
814+00000000000000000108c80103000000ef030000000000000900000000000000
815+00000000000000006e6574207469746c650000001c00c80101005000f3030000
816+00000000000000000000000000000000000000000108c90103000000ef030000
817+00000000090000000000000000000000000000006e6574207469746c65000000
818+1c00c90101005000f30300000000000000000000000000000000000000000000
819+0108ca0103000000ef0300000000000009000000000000000000000000000000
820+6e6574207469746c650000001c00ca0101005000f30300000000000000000000
821+0000000000000000000000000108cb0103000000ef0300000000000009000000
822+0000000000000000000000006e6574207469746c650000001c00cb0101005000
823+f303000000000000000000000000000000000000000000000108cc0103000000
824+ef03000000000000090000000000000000000000000000006e6574207469746c
825+650000001c00cc0101005000f303000000000000000000000000000000000000
826+000000000108cd0103000000ef03000000000000090000000000000000000000
827+000000006e6574207469746c650000001c00cd0101005000f303000000000000
828+000000000000000000000000000000000108ce0103000000ef03000000000000
829+090000000000000000000000000000006e6574207469746c650000001c00ce01
830+01005000f303000000000000000000000000000000000000000000000108cf01
831+03000000ef03000000000000090000000000000000000000000000006e657420
832+7469746c650000001c00cf0101005000f3030000000000000000000000000000
833+00000000000000000108d00103000000ef030000000000000900000000000000
834+00000000000000006e6574207469746c650000001c00d00101005000f3030000
835+00000000000000000000000000000000000000000108d10103000000ef030000
836+00000000090000000000000000000000000000006e6574207469746c65000000
837+1c00d10101005000f30300000000000000000000000000000000000000000000
838+0108d20103000000ef0300000000000009000000000000000000000000000000
839+6e6574207469746c650000001c00d20101005000f30300000000000000000000
840+0000000000000000000000000108d30103000000ef0300000000000009000000
841+0000000000000000000000006e6574207469746c650000001c00d30101005000
842+f303000000000000000000000000000000000000000000000108d40103000000
843+ef03000000000000090000000000000000000000000000006e6574207469746c
844+650000001c00d40101005000f303000000000000000000000000000000000000
845+000000000108d50103000000ef03000000000000090000000000000000000000
846+000000006e6574207469746c650000001c00d50101005000f303000000000000
847+000000000000000000000000000000000108d60103000000ef03000000000000
848+090000000000000000000000000000006e6574207469746c650000001c00d601
849+01005000f303000000000000000000000000000000000000000000000108d701
850+03000000ef03000000000000090000000000000000000000000000006e657420
851+7469746c650000001c00d70101005000f3030000000000000000000000000000
852+00000000000000000108d80103000000ef030000000000000900000000000000
853+00000000000000006e6574207469746c650000001c00d80101005000f3030000
854+00000000000000000000000000000000000000000108d90103000000ef030000
855+00000000090000000000000000000000000000006e6574207469746c65000000
856+1c00d90101005000f30300000000000000000000000000000000000000000000
857+0108da0103000000ef0300000000000009000000000000000000000000000000
858+6e6574207469746c650000001c00da0101005000f30300000000000000000000
859+0000000000000000000000000108db0103000000ef0300000000000009000000
860+0000000000000000000000006e6574207469746c650000001c00db0101005000
861+f303000000000000000000000000000000000000000000000108dc0103000000
862+ef03000000000000090000000000000000000000000000006e6574207469746c
863+650000001c00dc0101005000f303000000000000000000000000000000000000
864+000000000108dd0103000000ef03000000000000090000000000000000000000
865+000000006e6574207469746c650000001c00dd0101005000f303000000000000
866+000000000000000000000000000000000108de0103000000ef03000000000000
867+090000000000000000000000000000006e6574207469746c650000001c00de01
868+01005000f303000000000000000000000000000000000000000000000108df01
869+03000000ef03000000000000090000000000000000000000000000006e657420
870+7469746c650000001c00df0101005000f3030000000000000000000000000000
871+00000000000000000108e00103000000ef030000000000000900000000000000
872+00000000000000006e6574207469746c650000001c00e00101005000f3030000
873+00000000000000000000000000000000000000000108e10103000000ef030000
874+00000000090000000000000000000000000000006e6574207469746c65000000
875+1c00e10101005000f30300000000000000000000000000000000000000000000
876+0108e20103000000ef0300000000000009000000000000000000000000000000
877+6e6574207469746c650000001c00e20101005000f30300000000000000000000
878+0000000000000000000000000108e30103000000ef0300000000000009000000
879+0000000000000000000000006e6574207469746c650000001c00e30101005000
880+f303000000000000000000000000000000000000000000000108e40103000000
881+ef03000000000000090000000000000000000000000000006e6574207469746c
882+650000001c00e40101005000f303000000000000000000000000000000000000
883+000000000108e50103000000ef03000000000000090000000000000000000000
884+000000006e6574207469746c650000001c00e50101005000f303000000000000
885+000000000000000000000000000000000108e60103000000ef03000000000000
886+090000000000000000000000000000006e6574207469746c650000001c00e601
887+01005000f303000000000000000000000000000000000000000000000108e701
888+03000000ef03000000000000090000000000000000000000000000006e657420
889+7469746c650000001c00e70101005000f3030000000000000000000000000000
890+00000000000000000108e80103000000ef030000000000000900000000000000
891+00000000000000006e6574207469746c650000001c00e80101005000f3030000
892+00000000000000000000000000000000000000000108e90103000000ef030000
893+00000000090000000000000000000000000000006e6574207469746c65000000
894+1c00e90101005000f30300000000000000000000000000000000000000000000
895+0108ea0103000000ef0300000000000009000000000000000000000000000000
896+6e6574207469746c650000001c00ea0101005000f30300000000000000000000
897+0000000000000000000000000108eb0103000000ef0300000000000009000000
898+0000000000000000000000006e6574207469746c650000001c00eb0101005000
899+f303000000000000000000000000000000000000000000000108ec0103000000
900+ef03000000000000090000000000000000000000000000006e6574207469746c
901+650000001c00ec0101005000f303000000000000000000000000000000000000
902+000000000108ed0103000000ef03000000000000090000000000000000000000
903+000000006e6574207469746c650000001c00ed0101005000f303000000000000
904+000000000000000000000000000000000108ee0103000000ef03000000000000
905+090000000000000000000000000000006e6574207469746c650000001c00ee01
906+01005000f303000000000000000000000000000000000000000000000108ef01
907+03000000ef03000000000000090000000000000000000000000000006e657420
908+7469746c650000001c00ef0101005000f3030000000000000000000000000000
909+00000000000000000108f00103000000ef030000000000000900000000000000
910+00000000000000006e6574207469746c650000001c00f00101005000f3030000
911+00000000000000000000000000000000000000000108f10103000000ef030000
912+00000000090000000000000000000000000000006e6574207469746c65000000
913+1c00f10101005000f30300000000000000000000000000000000000000000000
914+0108f20103000000ef0300000000000009000000000000000000000000000000
915+6e6574207469746c650000001c00f20101005000f30300000000000000000000
916+0000000000000000000000000108f30103000000ef0300000000000009000000
917+0000000000000000000000006e6574207469746c650000001c00f30101005000
918+f303000000000000000000000000000000000000000000000108f40103000000
919+ef03000000000000090000000000000000000000000000006e6574207469746c
920+650000001c00f40101005000f303000000000000000000000000000000000000
921+000000000108f50103000000ef03000000000000090000000000000000000000
922+000000006e6574207469746c650000001c00f50101005000f303000000000000
923+000000000000000000000000000000000108f60103000000ef03000000000000
924+090000000000000000000000000000006e6574207469746c650000001c00f601
925+01005000f303000000000000000000000000000000000000000000000108f701
926+03000000ef03000000000000090000000000000000000000000000006e657420
927+7469746c650000001c00f70101005000f3030000000000000000000000000000
928+00000000000000000108f80103000000ef030000000000000900000000000000
929+00000000000000006e6574207469746c650000001c00f80101005000f3030000
930+00000000000000000000000000000000000000000108f90103000000ef030000
931+00000000090000000000000000000000000000006e6574207469746c65000000
932+1c00f90101005000f30300000000000000000000000000000000000000000000
933+0108fa0103000000ef0300000000000009000000000000000000000000000000
934+6e6574207469746c650000001c00fa0101005000f30300000000000000000000
935+0000000000000000000000000108fb0103000000ef0300000000000009000000
936+0000000000000000000000006e6574207469746c650000001c00fb0101005000
937+f303000000000000000000000000000000000000000000000108fc0103000000
938+ef03000000000000090000000000000000000000000000006e6574207469746c
939+650000001c00fc0101005000f303000000000000000000000000000000000000
940+000000000108fd0103000000ef03000000000000090000000000000000000000
941+000000006e6574207469746c650000001c00fd0101005000f303000000000000
942+000000000000000000000000000000000108fe0103000000ef03000000000000
943+090000000000000000000000000000006e6574207469746c650000001c00fe01
944+01005000f303000000000000000000000000000000000000000000000108ff01
945+03000000ef03000000000000090000000000000000000000000000006e657420
946+7469746c650000001c00ff0101005000f3030000000000000000000000000000
947+00000000000000000108000203000000ef030000000000000900000000000000
948+00000000000000006e6574207469746c650000001c00000201005000f3030000
949+00000000000000000000000000000000000000000108010203000000ef030000
950950 00000000090000000000000000000000000000006e6574207469746c65000000
M internal/adapters/wayland/xwm/testdata/streams/steady.hex +2000 -2000
@@ -1,2150 +1,2150 @@
1-1c00660001005000f30300000000000000000000000000000000000000000000
2-0108670003000000ef0300000000000009000000000000000000000000000000
3-6e6574207469746c650000001600670001005000010050000000000000000000
4-0a0014002c01c800000000000900670001005000000000000000000000000000
5-0000000000000000000000001300670000010000010050000000000000000000
6-0000000000000000000000001c00670001005000f30300000000000000000000
7-0000000000000000000000000108680003000000ef0300000000000009000000
8-0000000000000000000000006e6574207469746c650000001600680001005000
9-0100500000000000000000000a0014002c01c800000000000900680001005000
10-0000000000000000000000000000000000000000000000001300680000010000
11-0100500000000000000000000000000000000000000000001c00680001005000
12-f303000000000000000000000000000000000000000000000108690003000000
1+1c00710001005000f30300000000000000000000000000000000000000000000
2+0108720003000000ef0300000000000009000000000000000000000000000000
3+6e6574207469746c650000001600720001005000010050000000000000000000
4+0a0014002c01c800000000000900720001005000000000000000000000000000
5+0000000000000000000000001300720000010000010050000000000000000000
6+0000000000000000000000001c00720001005000f30300000000000000000000
7+0000000000000000000000000108730003000000ef0300000000000009000000
8+0000000000000000000000006e6574207469746c650000001600730001005000
9+0100500000000000000000000a0014002c01c800000000000900730001005000
10+0000000000000000000000000000000000000000000000001300730000010000
11+0100500000000000000000000000000000000000000000001c00730001005000
12+f303000000000000000000000000000000000000000000000108740003000000
1313 ef03000000000000090000000000000000000000000000006e6574207469746c
14-6500000016006900010050000100500000000000000000000a0014002c01c800
15-0000000009006900010050000000000000000000000000000000000000000000
16-0000000013006900000100000100500000000000000000000000000000000000
17-000000001c00690001005000f303000000000000000000000000000000000000
18-0000000001086a0003000000ef03000000000000090000000000000000000000
19-000000006e6574207469746c6500000016006a00010050000100500000000000
20-000000000a0014002c01c8000000000009006a00010050000000000000000000
21-0000000000000000000000000000000013006a00000100000100500000000000
22-000000000000000000000000000000001c006a0001005000f303000000000000
23-0000000000000000000000000000000001086b0003000000ef03000000000000
24-090000000000000000000000000000006e6574207469746c6500000016006b00
25-010050000100500000000000000000000a0014002c01c8000000000009006b00
26-0100500000000000000000000000000000000000000000000000000013006b00
27-000100000100500000000000000000000000000000000000000000001c006b00
28-01005000f3030000000000000000000000000000000000000000000001086c00
14+6500000016007400010050000100500000000000000000000a0014002c01c800
15+0000000009007400010050000000000000000000000000000000000000000000
16+0000000013007400000100000100500000000000000000000000000000000000
17+000000001c00740001005000f303000000000000000000000000000000000000
18+000000000108750003000000ef03000000000000090000000000000000000000
19+000000006e6574207469746c6500000016007500010050000100500000000000
20+000000000a0014002c01c8000000000009007500010050000000000000000000
21+0000000000000000000000000000000013007500000100000100500000000000
22+000000000000000000000000000000001c00750001005000f303000000000000
23+000000000000000000000000000000000108760003000000ef03000000000000
24+090000000000000000000000000000006e6574207469746c6500000016007600
25+010050000100500000000000000000000a0014002c01c8000000000009007600
26+0100500000000000000000000000000000000000000000000000000013007600
27+000100000100500000000000000000000000000000000000000000001c007600
28+01005000f3030000000000000000000000000000000000000000000001087700
2929 03000000ef03000000000000090000000000000000000000000000006e657420
30-7469746c6500000016006c00010050000100500000000000000000000a001400
31-2c01c8000000000009006c000100500000000000000000000000000000000000
32-000000000000000013006c000001000001005000000000000000000000000000
33-00000000000000001c006c0001005000f3030000000000000000000000000000
34-000000000000000001086d0003000000ef030000000000000900000000000000
35-00000000000000006e6574207469746c6500000016006d000100500001005000
36-00000000000000000a0014002c01c8000000000009006d000100500000000000
37-000000000000000000000000000000000000000013006d000001000001005000
38-00000000000000000000000000000000000000001c006d0001005000f3030000
39-000000000000000000000000000000000000000001086e0003000000ef030000
30+7469746c6500000016007700010050000100500000000000000000000a001400
31+2c01c80000000000090077000100500000000000000000000000000000000000
32+0000000000000000130077000001000001005000000000000000000000000000
33+00000000000000001c00770001005000f3030000000000000000000000000000
34+00000000000000000108780003000000ef030000000000000900000000000000
35+00000000000000006e6574207469746c65000000160078000100500001005000
36+00000000000000000a0014002c01c80000000000090078000100500000000000
37+0000000000000000000000000000000000000000130078000001000001005000
38+00000000000000000000000000000000000000001c00780001005000f3030000
39+00000000000000000000000000000000000000000108790003000000ef030000
4040 00000000090000000000000000000000000000006e6574207469746c65000000
41-16006e00010050000100500000000000000000000a0014002c01c80000000000
42-09006e0001005000000000000000000000000000000000000000000000000000
43-13006e0000010000010050000000000000000000000000000000000000000000
44-1c006e0001005000f30300000000000000000000000000000000000000000000
45-01086f0003000000ef0300000000000009000000000000000000000000000000
46-6e6574207469746c6500000016006f0001005000010050000000000000000000
47-0a0014002c01c8000000000009006f0001005000000000000000000000000000
48-00000000000000000000000013006f0000010000010050000000000000000000
49-0000000000000000000000001c006f0001005000f30300000000000000000000
50-0000000000000000000000000108700003000000ef0300000000000009000000
51-0000000000000000000000006e6574207469746c650000001600700001005000
52-0100500000000000000000000a0014002c01c800000000000900700001005000
53-0000000000000000000000000000000000000000000000001300700000010000
54-0100500000000000000000000000000000000000000000001c00700001005000
55-f303000000000000000000000000000000000000000000000108710003000000
41+16007900010050000100500000000000000000000a0014002c01c80000000000
42+0900790001005000000000000000000000000000000000000000000000000000
43+1300790000010000010050000000000000000000000000000000000000000000
44+1c00790001005000f30300000000000000000000000000000000000000000000
45+01087a0003000000ef0300000000000009000000000000000000000000000000
46+6e6574207469746c6500000016007a0001005000010050000000000000000000
47+0a0014002c01c8000000000009007a0001005000000000000000000000000000
48+00000000000000000000000013007a0000010000010050000000000000000000
49+0000000000000000000000001c007a0001005000f30300000000000000000000
50+00000000000000000000000001087b0003000000ef0300000000000009000000
51+0000000000000000000000006e6574207469746c6500000016007b0001005000
52+0100500000000000000000000a0014002c01c8000000000009007b0001005000
53+00000000000000000000000000000000000000000000000013007b0000010000
54+0100500000000000000000000000000000000000000000001c007b0001005000
55+f3030000000000000000000000000000000000000000000001087c0003000000
5656 ef03000000000000090000000000000000000000000000006e6574207469746c
57-6500000016007100010050000100500000000000000000000a0014002c01c800
58-0000000009007100010050000000000000000000000000000000000000000000
59-0000000013007100000100000100500000000000000000000000000000000000
60-000000001c00710001005000f303000000000000000000000000000000000000
61-000000000108720003000000ef03000000000000090000000000000000000000
62-000000006e6574207469746c6500000016007200010050000100500000000000
63-000000000a0014002c01c8000000000009007200010050000000000000000000
64-0000000000000000000000000000000013007200000100000100500000000000
65-000000000000000000000000000000001c00720001005000f303000000000000
66-000000000000000000000000000000000108730003000000ef03000000000000
67-090000000000000000000000000000006e6574207469746c6500000016007300
68-010050000100500000000000000000000a0014002c01c8000000000009007300
69-0100500000000000000000000000000000000000000000000000000013007300
70-000100000100500000000000000000000000000000000000000000001c007300
71-01005000f3030000000000000000000000000000000000000000000001087400
57+6500000016007c00010050000100500000000000000000000a0014002c01c800
58+0000000009007c00010050000000000000000000000000000000000000000000
59+0000000013007c00000100000100500000000000000000000000000000000000
60+000000001c007c0001005000f303000000000000000000000000000000000000
61+0000000001087d0003000000ef03000000000000090000000000000000000000
62+000000006e6574207469746c6500000016007d00010050000100500000000000
63+000000000a0014002c01c8000000000009007d00010050000000000000000000
64+0000000000000000000000000000000013007d00000100000100500000000000
65+000000000000000000000000000000001c007d0001005000f303000000000000
66+0000000000000000000000000000000001087e0003000000ef03000000000000
67+090000000000000000000000000000006e6574207469746c6500000016007e00
68+010050000100500000000000000000000a0014002c01c8000000000009007e00
69+0100500000000000000000000000000000000000000000000000000013007e00
70+000100000100500000000000000000000000000000000000000000001c007e00
71+01005000f3030000000000000000000000000000000000000000000001087f00
7272 03000000ef03000000000000090000000000000000000000000000006e657420
73-7469746c6500000016007400010050000100500000000000000000000a001400
74-2c01c80000000000090074000100500000000000000000000000000000000000
75-0000000000000000130074000001000001005000000000000000000000000000
76-00000000000000001c00740001005000f3030000000000000000000000000000
77-00000000000000000108750003000000ef030000000000000900000000000000
78-00000000000000006e6574207469746c65000000160075000100500001005000
79-00000000000000000a0014002c01c80000000000090075000100500000000000
80-0000000000000000000000000000000000000000130075000001000001005000
81-00000000000000000000000000000000000000001c00750001005000f3030000
82-00000000000000000000000000000000000000000108760003000000ef030000
73+7469746c6500000016007f00010050000100500000000000000000000a001400
74+2c01c8000000000009007f000100500000000000000000000000000000000000
75+000000000000000013007f000001000001005000000000000000000000000000
76+00000000000000001c007f0001005000f3030000000000000000000000000000
77+00000000000000000108800003000000ef030000000000000900000000000000
78+00000000000000006e6574207469746c65000000160080000100500001005000
79+00000000000000000a0014002c01c80000000000090080000100500000000000
80+0000000000000000000000000000000000000000130080000001000001005000
81+00000000000000000000000000000000000000001c00800001005000f3030000
82+00000000000000000000000000000000000000000108810003000000ef030000
8383 00000000090000000000000000000000000000006e6574207469746c65000000
84-16007600010050000100500000000000000000000a0014002c01c80000000000
85-0900760001005000000000000000000000000000000000000000000000000000
86-1300760000010000010050000000000000000000000000000000000000000000
87-1c00760001005000f30300000000000000000000000000000000000000000000
88-0108770003000000ef0300000000000009000000000000000000000000000000
89-6e6574207469746c650000001600770001005000010050000000000000000000
90-0a0014002c01c800000000000900770001005000000000000000000000000000
91-0000000000000000000000001300770000010000010050000000000000000000
92-0000000000000000000000001c00770001005000f30300000000000000000000
93-0000000000000000000000000108780003000000ef0300000000000009000000
94-0000000000000000000000006e6574207469746c650000001600780001005000
95-0100500000000000000000000a0014002c01c800000000000900780001005000
96-0000000000000000000000000000000000000000000000001300780000010000
97-0100500000000000000000000000000000000000000000001c00780001005000
98-f303000000000000000000000000000000000000000000000108790003000000
84+16008100010050000100500000000000000000000a0014002c01c80000000000
85+0900810001005000000000000000000000000000000000000000000000000000
86+1300810000010000010050000000000000000000000000000000000000000000
87+1c00810001005000f30300000000000000000000000000000000000000000000
88+0108820003000000ef0300000000000009000000000000000000000000000000
89+6e6574207469746c650000001600820001005000010050000000000000000000
90+0a0014002c01c800000000000900820001005000000000000000000000000000
91+0000000000000000000000001300820000010000010050000000000000000000
92+0000000000000000000000001c00820001005000f30300000000000000000000
93+0000000000000000000000000108830003000000ef0300000000000009000000
94+0000000000000000000000006e6574207469746c650000001600830001005000
95+0100500000000000000000000a0014002c01c800000000000900830001005000
96+0000000000000000000000000000000000000000000000001300830000010000
97+0100500000000000000000000000000000000000000000001c00830001005000
98+f303000000000000000000000000000000000000000000000108840003000000
9999 ef03000000000000090000000000000000000000000000006e6574207469746c
100-6500000016007900010050000100500000000000000000000a0014002c01c800
101-0000000009007900010050000000000000000000000000000000000000000000
102-0000000013007900000100000100500000000000000000000000000000000000
103-000000001c00790001005000f303000000000000000000000000000000000000
104-0000000001087a0003000000ef03000000000000090000000000000000000000
105-000000006e6574207469746c6500000016007a00010050000100500000000000
106-000000000a0014002c01c8000000000009007a00010050000000000000000000
107-0000000000000000000000000000000013007a00000100000100500000000000
108-000000000000000000000000000000001c007a0001005000f303000000000000
109-0000000000000000000000000000000001087b0003000000ef03000000000000
110-090000000000000000000000000000006e6574207469746c6500000016007b00
111-010050000100500000000000000000000a0014002c01c8000000000009007b00
112-0100500000000000000000000000000000000000000000000000000013007b00
113-000100000100500000000000000000000000000000000000000000001c007b00
114-01005000f3030000000000000000000000000000000000000000000001087c00
100+6500000016008400010050000100500000000000000000000a0014002c01c800
101+0000000009008400010050000000000000000000000000000000000000000000
102+0000000013008400000100000100500000000000000000000000000000000000
103+000000001c00840001005000f303000000000000000000000000000000000000
104+000000000108850003000000ef03000000000000090000000000000000000000
105+000000006e6574207469746c6500000016008500010050000100500000000000
106+000000000a0014002c01c8000000000009008500010050000000000000000000
107+0000000000000000000000000000000013008500000100000100500000000000
108+000000000000000000000000000000001c00850001005000f303000000000000
109+000000000000000000000000000000000108860003000000ef03000000000000
110+090000000000000000000000000000006e6574207469746c6500000016008600
111+010050000100500000000000000000000a0014002c01c8000000000009008600
112+0100500000000000000000000000000000000000000000000000000013008600
113+000100000100500000000000000000000000000000000000000000001c008600
114+01005000f3030000000000000000000000000000000000000000000001088700
115115 03000000ef03000000000000090000000000000000000000000000006e657420
116-7469746c6500000016007c00010050000100500000000000000000000a001400
117-2c01c8000000000009007c000100500000000000000000000000000000000000
118-000000000000000013007c000001000001005000000000000000000000000000
119-00000000000000001c007c0001005000f3030000000000000000000000000000
120-000000000000000001087d0003000000ef030000000000000900000000000000
121-00000000000000006e6574207469746c6500000016007d000100500001005000
122-00000000000000000a0014002c01c8000000000009007d000100500000000000
123-000000000000000000000000000000000000000013007d000001000001005000
124-00000000000000000000000000000000000000001c007d0001005000f3030000
125-000000000000000000000000000000000000000001087e0003000000ef030000
116+7469746c6500000016008700010050000100500000000000000000000a001400
117+2c01c80000000000090087000100500000000000000000000000000000000000
118+0000000000000000130087000001000001005000000000000000000000000000
119+00000000000000001c00870001005000f3030000000000000000000000000000
120+00000000000000000108880003000000ef030000000000000900000000000000
121+00000000000000006e6574207469746c65000000160088000100500001005000
122+00000000000000000a0014002c01c80000000000090088000100500000000000
123+0000000000000000000000000000000000000000130088000001000001005000
124+00000000000000000000000000000000000000001c00880001005000f3030000
125+00000000000000000000000000000000000000000108890003000000ef030000
126126 00000000090000000000000000000000000000006e6574207469746c65000000
127-16007e00010050000100500000000000000000000a0014002c01c80000000000
128-09007e0001005000000000000000000000000000000000000000000000000000
129-13007e0000010000010050000000000000000000000000000000000000000000
130-1c007e0001005000f30300000000000000000000000000000000000000000000
131-01087f0003000000ef0300000000000009000000000000000000000000000000
132-6e6574207469746c6500000016007f0001005000010050000000000000000000
133-0a0014002c01c8000000000009007f0001005000000000000000000000000000
134-00000000000000000000000013007f0000010000010050000000000000000000
135-0000000000000000000000001c007f0001005000f30300000000000000000000
136-0000000000000000000000000108800003000000ef0300000000000009000000
137-0000000000000000000000006e6574207469746c650000001600800001005000
138-0100500000000000000000000a0014002c01c800000000000900800001005000
139-0000000000000000000000000000000000000000000000001300800000010000
140-0100500000000000000000000000000000000000000000001c00800001005000
141-f303000000000000000000000000000000000000000000000108810003000000
127+16008900010050000100500000000000000000000a0014002c01c80000000000
128+0900890001005000000000000000000000000000000000000000000000000000
129+1300890000010000010050000000000000000000000000000000000000000000
130+1c00890001005000f30300000000000000000000000000000000000000000000
131+01088a0003000000ef0300000000000009000000000000000000000000000000
132+6e6574207469746c6500000016008a0001005000010050000000000000000000
133+0a0014002c01c8000000000009008a0001005000000000000000000000000000
134+00000000000000000000000013008a0000010000010050000000000000000000
135+0000000000000000000000001c008a0001005000f30300000000000000000000
136+00000000000000000000000001088b0003000000ef0300000000000009000000
137+0000000000000000000000006e6574207469746c6500000016008b0001005000
138+0100500000000000000000000a0014002c01c8000000000009008b0001005000
139+00000000000000000000000000000000000000000000000013008b0000010000
140+0100500000000000000000000000000000000000000000001c008b0001005000
141+f3030000000000000000000000000000000000000000000001088c0003000000
142142 ef03000000000000090000000000000000000000000000006e6574207469746c
143-6500000016008100010050000100500000000000000000000a0014002c01c800
144-0000000009008100010050000000000000000000000000000000000000000000
145-0000000013008100000100000100500000000000000000000000000000000000
146-000000001c00810001005000f303000000000000000000000000000000000000
147-000000000108820003000000ef03000000000000090000000000000000000000
148-000000006e6574207469746c6500000016008200010050000100500000000000
149-000000000a0014002c01c8000000000009008200010050000000000000000000
150-0000000000000000000000000000000013008200000100000100500000000000
151-000000000000000000000000000000001c00820001005000f303000000000000
152-000000000000000000000000000000000108830003000000ef03000000000000
153-090000000000000000000000000000006e6574207469746c6500000016008300
154-010050000100500000000000000000000a0014002c01c8000000000009008300
155-0100500000000000000000000000000000000000000000000000000013008300
156-000100000100500000000000000000000000000000000000000000001c008300
157-01005000f3030000000000000000000000000000000000000000000001088400
143+6500000016008c00010050000100500000000000000000000a0014002c01c800
144+0000000009008c00010050000000000000000000000000000000000000000000
145+0000000013008c00000100000100500000000000000000000000000000000000
146+000000001c008c0001005000f303000000000000000000000000000000000000
147+0000000001088d0003000000ef03000000000000090000000000000000000000
148+000000006e6574207469746c6500000016008d00010050000100500000000000
149+000000000a0014002c01c8000000000009008d00010050000000000000000000
150+0000000000000000000000000000000013008d00000100000100500000000000
151+000000000000000000000000000000001c008d0001005000f303000000000000
152+0000000000000000000000000000000001088e0003000000ef03000000000000
153+090000000000000000000000000000006e6574207469746c6500000016008e00
154+010050000100500000000000000000000a0014002c01c8000000000009008e00
155+0100500000000000000000000000000000000000000000000000000013008e00
156+000100000100500000000000000000000000000000000000000000001c008e00
157+01005000f3030000000000000000000000000000000000000000000001088f00
158158 03000000ef03000000000000090000000000000000000000000000006e657420
159-7469746c6500000016008400010050000100500000000000000000000a001400
160-2c01c80000000000090084000100500000000000000000000000000000000000
161-0000000000000000130084000001000001005000000000000000000000000000
162-00000000000000001c00840001005000f3030000000000000000000000000000
163-00000000000000000108850003000000ef030000000000000900000000000000
164-00000000000000006e6574207469746c65000000160085000100500001005000
165-00000000000000000a0014002c01c80000000000090085000100500000000000
166-0000000000000000000000000000000000000000130085000001000001005000
167-00000000000000000000000000000000000000001c00850001005000f3030000
168-00000000000000000000000000000000000000000108860003000000ef030000
159+7469746c6500000016008f00010050000100500000000000000000000a001400
160+2c01c8000000000009008f000100500000000000000000000000000000000000
161+000000000000000013008f000001000001005000000000000000000000000000
162+00000000000000001c008f0001005000f3030000000000000000000000000000
163+00000000000000000108900003000000ef030000000000000900000000000000
164+00000000000000006e6574207469746c65000000160090000100500001005000
165+00000000000000000a0014002c01c80000000000090090000100500000000000
166+0000000000000000000000000000000000000000130090000001000001005000
167+00000000000000000000000000000000000000001c00900001005000f3030000
168+00000000000000000000000000000000000000000108910003000000ef030000
169169 00000000090000000000000000000000000000006e6574207469746c65000000
170-16008600010050000100500000000000000000000a0014002c01c80000000000
171-0900860001005000000000000000000000000000000000000000000000000000
172-1300860000010000010050000000000000000000000000000000000000000000
173-1c00860001005000f30300000000000000000000000000000000000000000000
174-0108870003000000ef0300000000000009000000000000000000000000000000
175-6e6574207469746c650000001600870001005000010050000000000000000000
176-0a0014002c01c800000000000900870001005000000000000000000000000000
177-0000000000000000000000001300870000010000010050000000000000000000
178-0000000000000000000000001c00870001005000f30300000000000000000000
179-0000000000000000000000000108880003000000ef0300000000000009000000
180-0000000000000000000000006e6574207469746c650000001600880001005000
181-0100500000000000000000000a0014002c01c800000000000900880001005000
182-0000000000000000000000000000000000000000000000001300880000010000
183-0100500000000000000000000000000000000000000000001c00880001005000
184-f303000000000000000000000000000000000000000000000108890003000000
170+16009100010050000100500000000000000000000a0014002c01c80000000000
171+0900910001005000000000000000000000000000000000000000000000000000
172+1300910000010000010050000000000000000000000000000000000000000000
173+1c00910001005000f30300000000000000000000000000000000000000000000
174+0108920003000000ef0300000000000009000000000000000000000000000000
175+6e6574207469746c650000001600920001005000010050000000000000000000
176+0a0014002c01c800000000000900920001005000000000000000000000000000
177+0000000000000000000000001300920000010000010050000000000000000000
178+0000000000000000000000001c00920001005000f30300000000000000000000
179+0000000000000000000000000108930003000000ef0300000000000009000000
180+0000000000000000000000006e6574207469746c650000001600930001005000
181+0100500000000000000000000a0014002c01c800000000000900930001005000
182+0000000000000000000000000000000000000000000000001300930000010000
183+0100500000000000000000000000000000000000000000001c00930001005000
184+f303000000000000000000000000000000000000000000000108940003000000
185185 ef03000000000000090000000000000000000000000000006e6574207469746c
186-6500000016008900010050000100500000000000000000000a0014002c01c800
187-0000000009008900010050000000000000000000000000000000000000000000
188-0000000013008900000100000100500000000000000000000000000000000000
189-000000001c00890001005000f303000000000000000000000000000000000000
190-0000000001088a0003000000ef03000000000000090000000000000000000000
191-000000006e6574207469746c6500000016008a00010050000100500000000000
192-000000000a0014002c01c8000000000009008a00010050000000000000000000
193-0000000000000000000000000000000013008a00000100000100500000000000
194-000000000000000000000000000000001c008a0001005000f303000000000000
195-0000000000000000000000000000000001088b0003000000ef03000000000000
196-090000000000000000000000000000006e6574207469746c6500000016008b00
197-010050000100500000000000000000000a0014002c01c8000000000009008b00
198-0100500000000000000000000000000000000000000000000000000013008b00
199-000100000100500000000000000000000000000000000000000000001c008b00
200-01005000f3030000000000000000000000000000000000000000000001088c00
186+6500000016009400010050000100500000000000000000000a0014002c01c800
187+0000000009009400010050000000000000000000000000000000000000000000
188+0000000013009400000100000100500000000000000000000000000000000000
189+000000001c00940001005000f303000000000000000000000000000000000000
190+000000000108950003000000ef03000000000000090000000000000000000000
191+000000006e6574207469746c6500000016009500010050000100500000000000
192+000000000a0014002c01c8000000000009009500010050000000000000000000
193+0000000000000000000000000000000013009500000100000100500000000000
194+000000000000000000000000000000001c00950001005000f303000000000000
195+000000000000000000000000000000000108960003000000ef03000000000000
196+090000000000000000000000000000006e6574207469746c6500000016009600
197+010050000100500000000000000000000a0014002c01c8000000000009009600
198+0100500000000000000000000000000000000000000000000000000013009600
199+000100000100500000000000000000000000000000000000000000001c009600
200+01005000f3030000000000000000000000000000000000000000000001089700
201201 03000000ef03000000000000090000000000000000000000000000006e657420
202-7469746c6500000016008c00010050000100500000000000000000000a001400
203-2c01c8000000000009008c000100500000000000000000000000000000000000
204-000000000000000013008c000001000001005000000000000000000000000000
205-00000000000000001c008c0001005000f3030000000000000000000000000000
206-000000000000000001088d0003000000ef030000000000000900000000000000
207-00000000000000006e6574207469746c6500000016008d000100500001005000
208-00000000000000000a0014002c01c8000000000009008d000100500000000000
209-000000000000000000000000000000000000000013008d000001000001005000
210-00000000000000000000000000000000000000001c008d0001005000f3030000
211-000000000000000000000000000000000000000001088e0003000000ef030000
202+7469746c6500000016009700010050000100500000000000000000000a001400
203+2c01c80000000000090097000100500000000000000000000000000000000000
204+0000000000000000130097000001000001005000000000000000000000000000
205+00000000000000001c00970001005000f3030000000000000000000000000000
206+00000000000000000108980003000000ef030000000000000900000000000000
207+00000000000000006e6574207469746c65000000160098000100500001005000
208+00000000000000000a0014002c01c80000000000090098000100500000000000
209+0000000000000000000000000000000000000000130098000001000001005000
210+00000000000000000000000000000000000000001c00980001005000f3030000
211+00000000000000000000000000000000000000000108990003000000ef030000
212212 00000000090000000000000000000000000000006e6574207469746c65000000
213-16008e00010050000100500000000000000000000a0014002c01c80000000000
214-09008e0001005000000000000000000000000000000000000000000000000000
215-13008e0000010000010050000000000000000000000000000000000000000000
216-1c008e0001005000f30300000000000000000000000000000000000000000000
217-01088f0003000000ef0300000000000009000000000000000000000000000000
218-6e6574207469746c6500000016008f0001005000010050000000000000000000
219-0a0014002c01c8000000000009008f0001005000000000000000000000000000
220-00000000000000000000000013008f0000010000010050000000000000000000
221-0000000000000000000000001c008f0001005000f30300000000000000000000
222-0000000000000000000000000108900003000000ef0300000000000009000000
223-0000000000000000000000006e6574207469746c650000001600900001005000
224-0100500000000000000000000a0014002c01c800000000000900900001005000
225-0000000000000000000000000000000000000000000000001300900000010000
226-0100500000000000000000000000000000000000000000001c00900001005000
227-f303000000000000000000000000000000000000000000000108910003000000
213+16009900010050000100500000000000000000000a0014002c01c80000000000
214+0900990001005000000000000000000000000000000000000000000000000000
215+1300990000010000010050000000000000000000000000000000000000000000
216+1c00990001005000f30300000000000000000000000000000000000000000000
217+01089a0003000000ef0300000000000009000000000000000000000000000000
218+6e6574207469746c6500000016009a0001005000010050000000000000000000
219+0a0014002c01c8000000000009009a0001005000000000000000000000000000
220+00000000000000000000000013009a0000010000010050000000000000000000
221+0000000000000000000000001c009a0001005000f30300000000000000000000
222+00000000000000000000000001089b0003000000ef0300000000000009000000
223+0000000000000000000000006e6574207469746c6500000016009b0001005000
224+0100500000000000000000000a0014002c01c8000000000009009b0001005000
225+00000000000000000000000000000000000000000000000013009b0000010000
226+0100500000000000000000000000000000000000000000001c009b0001005000
227+f3030000000000000000000000000000000000000000000001089c0003000000
228228 ef03000000000000090000000000000000000000000000006e6574207469746c
229-6500000016009100010050000100500000000000000000000a0014002c01c800
230-0000000009009100010050000000000000000000000000000000000000000000
231-0000000013009100000100000100500000000000000000000000000000000000
232-000000001c00910001005000f303000000000000000000000000000000000000
233-000000000108920003000000ef03000000000000090000000000000000000000
234-000000006e6574207469746c6500000016009200010050000100500000000000
235-000000000a0014002c01c8000000000009009200010050000000000000000000
236-0000000000000000000000000000000013009200000100000100500000000000
237-000000000000000000000000000000001c00920001005000f303000000000000
238-000000000000000000000000000000000108930003000000ef03000000000000
239-090000000000000000000000000000006e6574207469746c6500000016009300
240-010050000100500000000000000000000a0014002c01c8000000000009009300
241-0100500000000000000000000000000000000000000000000000000013009300
242-000100000100500000000000000000000000000000000000000000001c009300
243-01005000f3030000000000000000000000000000000000000000000001089400
229+6500000016009c00010050000100500000000000000000000a0014002c01c800
230+0000000009009c00010050000000000000000000000000000000000000000000
231+0000000013009c00000100000100500000000000000000000000000000000000
232+000000001c009c0001005000f303000000000000000000000000000000000000
233+0000000001089d0003000000ef03000000000000090000000000000000000000
234+000000006e6574207469746c6500000016009d00010050000100500000000000
235+000000000a0014002c01c8000000000009009d00010050000000000000000000
236+0000000000000000000000000000000013009d00000100000100500000000000
237+000000000000000000000000000000001c009d0001005000f303000000000000
238+0000000000000000000000000000000001089e0003000000ef03000000000000
239+090000000000000000000000000000006e6574207469746c6500000016009e00
240+010050000100500000000000000000000a0014002c01c8000000000009009e00
241+0100500000000000000000000000000000000000000000000000000013009e00
242+000100000100500000000000000000000000000000000000000000001c009e00
243+01005000f3030000000000000000000000000000000000000000000001089f00
244244 03000000ef03000000000000090000000000000000000000000000006e657420
245-7469746c6500000016009400010050000100500000000000000000000a001400
246-2c01c80000000000090094000100500000000000000000000000000000000000
247-0000000000000000130094000001000001005000000000000000000000000000
248-00000000000000001c00940001005000f3030000000000000000000000000000
249-00000000000000000108950003000000ef030000000000000900000000000000
250-00000000000000006e6574207469746c65000000160095000100500001005000
251-00000000000000000a0014002c01c80000000000090095000100500000000000
252-0000000000000000000000000000000000000000130095000001000001005000
253-00000000000000000000000000000000000000001c00950001005000f3030000
254-00000000000000000000000000000000000000000108960003000000ef030000
245+7469746c6500000016009f00010050000100500000000000000000000a001400
246+2c01c8000000000009009f000100500000000000000000000000000000000000
247+000000000000000013009f000001000001005000000000000000000000000000
248+00000000000000001c009f0001005000f3030000000000000000000000000000
249+00000000000000000108a00003000000ef030000000000000900000000000000
250+00000000000000006e6574207469746c650000001600a0000100500001005000
251+00000000000000000a0014002c01c800000000000900a0000100500000000000
252+00000000000000000000000000000000000000001300a0000001000001005000
253+00000000000000000000000000000000000000001c00a00001005000f3030000
254+00000000000000000000000000000000000000000108a10003000000ef030000
255255 00000000090000000000000000000000000000006e6574207469746c65000000
256-16009600010050000100500000000000000000000a0014002c01c80000000000
257-0900960001005000000000000000000000000000000000000000000000000000
258-1300960000010000010050000000000000000000000000000000000000000000
259-1c00960001005000f30300000000000000000000000000000000000000000000
260-0108970003000000ef0300000000000009000000000000000000000000000000
261-6e6574207469746c650000001600970001005000010050000000000000000000
262-0a0014002c01c800000000000900970001005000000000000000000000000000
263-0000000000000000000000001300970000010000010050000000000000000000
264-0000000000000000000000001c00970001005000f30300000000000000000000
265-0000000000000000000000000108980003000000ef0300000000000009000000
266-0000000000000000000000006e6574207469746c650000001600980001005000
267-0100500000000000000000000a0014002c01c800000000000900980001005000
268-0000000000000000000000000000000000000000000000001300980000010000
269-0100500000000000000000000000000000000000000000001c00980001005000
270-f303000000000000000000000000000000000000000000000108990003000000
256+1600a100010050000100500000000000000000000a0014002c01c80000000000
257+0900a10001005000000000000000000000000000000000000000000000000000
258+1300a10000010000010050000000000000000000000000000000000000000000
259+1c00a10001005000f30300000000000000000000000000000000000000000000
260+0108a20003000000ef0300000000000009000000000000000000000000000000
261+6e6574207469746c650000001600a20001005000010050000000000000000000
262+0a0014002c01c800000000000900a20001005000000000000000000000000000
263+0000000000000000000000001300a20000010000010050000000000000000000
264+0000000000000000000000001c00a20001005000f30300000000000000000000
265+0000000000000000000000000108a30003000000ef0300000000000009000000
266+0000000000000000000000006e6574207469746c650000001600a30001005000
267+0100500000000000000000000a0014002c01c800000000000900a30001005000
268+0000000000000000000000000000000000000000000000001300a30000010000
269+0100500000000000000000000000000000000000000000001c00a30001005000
270+f303000000000000000000000000000000000000000000000108a40003000000
271271 ef03000000000000090000000000000000000000000000006e6574207469746c
272-6500000016009900010050000100500000000000000000000a0014002c01c800
273-0000000009009900010050000000000000000000000000000000000000000000
274-0000000013009900000100000100500000000000000000000000000000000000
275-000000001c00990001005000f303000000000000000000000000000000000000
276-0000000001089a0003000000ef03000000000000090000000000000000000000
277-000000006e6574207469746c6500000016009a00010050000100500000000000
278-000000000a0014002c01c8000000000009009a00010050000000000000000000
279-0000000000000000000000000000000013009a00000100000100500000000000
280-000000000000000000000000000000001c009a0001005000f303000000000000
281-0000000000000000000000000000000001089b0003000000ef03000000000000
282-090000000000000000000000000000006e6574207469746c6500000016009b00
283-010050000100500000000000000000000a0014002c01c8000000000009009b00
284-0100500000000000000000000000000000000000000000000000000013009b00
285-000100000100500000000000000000000000000000000000000000001c009b00
286-01005000f3030000000000000000000000000000000000000000000001089c00
272+650000001600a400010050000100500000000000000000000a0014002c01c800
273+000000000900a400010050000000000000000000000000000000000000000000
274+000000001300a400000100000100500000000000000000000000000000000000
275+000000001c00a40001005000f303000000000000000000000000000000000000
276+000000000108a50003000000ef03000000000000090000000000000000000000
277+000000006e6574207469746c650000001600a500010050000100500000000000
278+000000000a0014002c01c800000000000900a500010050000000000000000000
279+000000000000000000000000000000001300a500000100000100500000000000
280+000000000000000000000000000000001c00a50001005000f303000000000000
281+000000000000000000000000000000000108a60003000000ef03000000000000
282+090000000000000000000000000000006e6574207469746c650000001600a600
283+010050000100500000000000000000000a0014002c01c800000000000900a600
284+010050000000000000000000000000000000000000000000000000001300a600
285+000100000100500000000000000000000000000000000000000000001c00a600
286+01005000f303000000000000000000000000000000000000000000000108a700
287287 03000000ef03000000000000090000000000000000000000000000006e657420
288-7469746c6500000016009c00010050000100500000000000000000000a001400
289-2c01c8000000000009009c000100500000000000000000000000000000000000
290-000000000000000013009c000001000001005000000000000000000000000000
291-00000000000000001c009c0001005000f3030000000000000000000000000000
292-000000000000000001089d0003000000ef030000000000000900000000000000
293-00000000000000006e6574207469746c6500000016009d000100500001005000
294-00000000000000000a0014002c01c8000000000009009d000100500000000000
295-000000000000000000000000000000000000000013009d000001000001005000
296-00000000000000000000000000000000000000001c009d0001005000f3030000
297-000000000000000000000000000000000000000001089e0003000000ef030000
288+7469746c650000001600a700010050000100500000000000000000000a001400
289+2c01c800000000000900a7000100500000000000000000000000000000000000
290+00000000000000001300a7000001000001005000000000000000000000000000
291+00000000000000001c00a70001005000f3030000000000000000000000000000
292+00000000000000000108a80003000000ef030000000000000900000000000000
293+00000000000000006e6574207469746c650000001600a8000100500001005000
294+00000000000000000a0014002c01c800000000000900a8000100500000000000
295+00000000000000000000000000000000000000001300a8000001000001005000
296+00000000000000000000000000000000000000001c00a80001005000f3030000
297+00000000000000000000000000000000000000000108a90003000000ef030000
298298 00000000090000000000000000000000000000006e6574207469746c65000000
299-16009e00010050000100500000000000000000000a0014002c01c80000000000
300-09009e0001005000000000000000000000000000000000000000000000000000
301-13009e0000010000010050000000000000000000000000000000000000000000
302-1c009e0001005000f30300000000000000000000000000000000000000000000
303-01089f0003000000ef0300000000000009000000000000000000000000000000
304-6e6574207469746c6500000016009f0001005000010050000000000000000000
305-0a0014002c01c8000000000009009f0001005000000000000000000000000000
306-00000000000000000000000013009f0000010000010050000000000000000000
307-0000000000000000000000001c009f0001005000f30300000000000000000000
308-0000000000000000000000000108a00003000000ef0300000000000009000000
309-0000000000000000000000006e6574207469746c650000001600a00001005000
310-0100500000000000000000000a0014002c01c800000000000900a00001005000
311-0000000000000000000000000000000000000000000000001300a00000010000
312-0100500000000000000000000000000000000000000000001c00a00001005000
313-f303000000000000000000000000000000000000000000000108a10003000000
299+1600a900010050000100500000000000000000000a0014002c01c80000000000
300+0900a90001005000000000000000000000000000000000000000000000000000
301+1300a90000010000010050000000000000000000000000000000000000000000
302+1c00a90001005000f30300000000000000000000000000000000000000000000
303+0108aa0003000000ef0300000000000009000000000000000000000000000000
304+6e6574207469746c650000001600aa0001005000010050000000000000000000
305+0a0014002c01c800000000000900aa0001005000000000000000000000000000
306+0000000000000000000000001300aa0000010000010050000000000000000000
307+0000000000000000000000001c00aa0001005000f30300000000000000000000
308+0000000000000000000000000108ab0003000000ef0300000000000009000000
309+0000000000000000000000006e6574207469746c650000001600ab0001005000
310+0100500000000000000000000a0014002c01c800000000000900ab0001005000
311+0000000000000000000000000000000000000000000000001300ab0000010000
312+0100500000000000000000000000000000000000000000001c00ab0001005000
313+f303000000000000000000000000000000000000000000000108ac0003000000
314314 ef03000000000000090000000000000000000000000000006e6574207469746c
315-650000001600a100010050000100500000000000000000000a0014002c01c800
316-000000000900a100010050000000000000000000000000000000000000000000
317-000000001300a100000100000100500000000000000000000000000000000000
318-000000001c00a10001005000f303000000000000000000000000000000000000
319-000000000108a20003000000ef03000000000000090000000000000000000000
320-000000006e6574207469746c650000001600a200010050000100500000000000
321-000000000a0014002c01c800000000000900a200010050000000000000000000
322-000000000000000000000000000000001300a200000100000100500000000000
323-000000000000000000000000000000001c00a20001005000f303000000000000
324-000000000000000000000000000000000108a30003000000ef03000000000000
325-090000000000000000000000000000006e6574207469746c650000001600a300
326-010050000100500000000000000000000a0014002c01c800000000000900a300
327-010050000000000000000000000000000000000000000000000000001300a300
328-000100000100500000000000000000000000000000000000000000001c00a300
329-01005000f303000000000000000000000000000000000000000000000108a400
315+650000001600ac00010050000100500000000000000000000a0014002c01c800
316+000000000900ac00010050000000000000000000000000000000000000000000
317+000000001300ac00000100000100500000000000000000000000000000000000
318+000000001c00ac0001005000f303000000000000000000000000000000000000
319+000000000108ad0003000000ef03000000000000090000000000000000000000
320+000000006e6574207469746c650000001600ad00010050000100500000000000
321+000000000a0014002c01c800000000000900ad00010050000000000000000000
322+000000000000000000000000000000001300ad00000100000100500000000000
323+000000000000000000000000000000001c00ad0001005000f303000000000000
324+000000000000000000000000000000000108ae0003000000ef03000000000000
325+090000000000000000000000000000006e6574207469746c650000001600ae00
326+010050000100500000000000000000000a0014002c01c800000000000900ae00
327+010050000000000000000000000000000000000000000000000000001300ae00
328+000100000100500000000000000000000000000000000000000000001c00ae00
329+01005000f303000000000000000000000000000000000000000000000108af00
330330 03000000ef03000000000000090000000000000000000000000000006e657420
331-7469746c650000001600a400010050000100500000000000000000000a001400
332-2c01c800000000000900a4000100500000000000000000000000000000000000
333-00000000000000001300a4000001000001005000000000000000000000000000
334-00000000000000001c00a40001005000f3030000000000000000000000000000
335-00000000000000000108a50003000000ef030000000000000900000000000000
336-00000000000000006e6574207469746c650000001600a5000100500001005000
337-00000000000000000a0014002c01c800000000000900a5000100500000000000
338-00000000000000000000000000000000000000001300a5000001000001005000
339-00000000000000000000000000000000000000001c00a50001005000f3030000
340-00000000000000000000000000000000000000000108a60003000000ef030000
331+7469746c650000001600af00010050000100500000000000000000000a001400
332+2c01c800000000000900af000100500000000000000000000000000000000000
333+00000000000000001300af000001000001005000000000000000000000000000
334+00000000000000001c00af0001005000f3030000000000000000000000000000
335+00000000000000000108b00003000000ef030000000000000900000000000000
336+00000000000000006e6574207469746c650000001600b0000100500001005000
337+00000000000000000a0014002c01c800000000000900b0000100500000000000
338+00000000000000000000000000000000000000001300b0000001000001005000
339+00000000000000000000000000000000000000001c00b00001005000f3030000
340+00000000000000000000000000000000000000000108b10003000000ef030000
341341 00000000090000000000000000000000000000006e6574207469746c65000000
342-1600a600010050000100500000000000000000000a0014002c01c80000000000
343-0900a60001005000000000000000000000000000000000000000000000000000
344-1300a60000010000010050000000000000000000000000000000000000000000
345-1c00a60001005000f30300000000000000000000000000000000000000000000
346-0108a70003000000ef0300000000000009000000000000000000000000000000
347-6e6574207469746c650000001600a70001005000010050000000000000000000
348-0a0014002c01c800000000000900a70001005000000000000000000000000000
349-0000000000000000000000001300a70000010000010050000000000000000000
350-0000000000000000000000001c00a70001005000f30300000000000000000000
351-0000000000000000000000000108a80003000000ef0300000000000009000000
352-0000000000000000000000006e6574207469746c650000001600a80001005000
353-0100500000000000000000000a0014002c01c800000000000900a80001005000
354-0000000000000000000000000000000000000000000000001300a80000010000
355-0100500000000000000000000000000000000000000000001c00a80001005000
356-f303000000000000000000000000000000000000000000000108a90003000000
342+1600b100010050000100500000000000000000000a0014002c01c80000000000
343+0900b10001005000000000000000000000000000000000000000000000000000
344+1300b10000010000010050000000000000000000000000000000000000000000
345+1c00b10001005000f30300000000000000000000000000000000000000000000
346+0108b20003000000ef0300000000000009000000000000000000000000000000
347+6e6574207469746c650000001600b20001005000010050000000000000000000
348+0a0014002c01c800000000000900b20001005000000000000000000000000000
349+0000000000000000000000001300b20000010000010050000000000000000000
350+0000000000000000000000001c00b20001005000f30300000000000000000000
351+0000000000000000000000000108b30003000000ef0300000000000009000000
352+0000000000000000000000006e6574207469746c650000001600b30001005000
353+0100500000000000000000000a0014002c01c800000000000900b30001005000
354+0000000000000000000000000000000000000000000000001300b30000010000
355+0100500000000000000000000000000000000000000000001c00b30001005000
356+f303000000000000000000000000000000000000000000000108b40003000000
357357 ef03000000000000090000000000000000000000000000006e6574207469746c
358-650000001600a900010050000100500000000000000000000a0014002c01c800
359-000000000900a900010050000000000000000000000000000000000000000000
360-000000001300a900000100000100500000000000000000000000000000000000
361-000000001c00a90001005000f303000000000000000000000000000000000000
362-000000000108aa0003000000ef03000000000000090000000000000000000000
363-000000006e6574207469746c650000001600aa00010050000100500000000000
364-000000000a0014002c01c800000000000900aa00010050000000000000000000
365-000000000000000000000000000000001300aa00000100000100500000000000
366-000000000000000000000000000000001c00aa0001005000f303000000000000
367-000000000000000000000000000000000108ab0003000000ef03000000000000
368-090000000000000000000000000000006e6574207469746c650000001600ab00
369-010050000100500000000000000000000a0014002c01c800000000000900ab00
370-010050000000000000000000000000000000000000000000000000001300ab00
371-000100000100500000000000000000000000000000000000000000001c00ab00
372-01005000f303000000000000000000000000000000000000000000000108ac00
358+650000001600b400010050000100500000000000000000000a0014002c01c800
359+000000000900b400010050000000000000000000000000000000000000000000
360+000000001300b400000100000100500000000000000000000000000000000000
361+000000001c00b40001005000f303000000000000000000000000000000000000
362+000000000108b50003000000ef03000000000000090000000000000000000000
363+000000006e6574207469746c650000001600b500010050000100500000000000
364+000000000a0014002c01c800000000000900b500010050000000000000000000
365+000000000000000000000000000000001300b500000100000100500000000000
366+000000000000000000000000000000001c00b50001005000f303000000000000
367+000000000000000000000000000000000108b60003000000ef03000000000000
368+090000000000000000000000000000006e6574207469746c650000001600b600
369+010050000100500000000000000000000a0014002c01c800000000000900b600
370+010050000000000000000000000000000000000000000000000000001300b600
371+000100000100500000000000000000000000000000000000000000001c00b600
372+01005000f303000000000000000000000000000000000000000000000108b700
373373 03000000ef03000000000000090000000000000000000000000000006e657420
374-7469746c650000001600ac00010050000100500000000000000000000a001400
375-2c01c800000000000900ac000100500000000000000000000000000000000000
376-00000000000000001300ac000001000001005000000000000000000000000000
377-00000000000000001c00ac0001005000f3030000000000000000000000000000
378-00000000000000000108ad0003000000ef030000000000000900000000000000
379-00000000000000006e6574207469746c650000001600ad000100500001005000
380-00000000000000000a0014002c01c800000000000900ad000100500000000000
381-00000000000000000000000000000000000000001300ad000001000001005000
382-00000000000000000000000000000000000000001c00ad0001005000f3030000
383-00000000000000000000000000000000000000000108ae0003000000ef030000
374+7469746c650000001600b700010050000100500000000000000000000a001400
375+2c01c800000000000900b7000100500000000000000000000000000000000000
376+00000000000000001300b7000001000001005000000000000000000000000000
377+00000000000000001c00b70001005000f3030000000000000000000000000000
378+00000000000000000108b80003000000ef030000000000000900000000000000
379+00000000000000006e6574207469746c650000001600b8000100500001005000
380+00000000000000000a0014002c01c800000000000900b8000100500000000000
381+00000000000000000000000000000000000000001300b8000001000001005000
382+00000000000000000000000000000000000000001c00b80001005000f3030000
383+00000000000000000000000000000000000000000108b90003000000ef030000
384384 00000000090000000000000000000000000000006e6574207469746c65000000
385-1600ae00010050000100500000000000000000000a0014002c01c80000000000
386-0900ae0001005000000000000000000000000000000000000000000000000000
387-1300ae0000010000010050000000000000000000000000000000000000000000
388-1c00ae0001005000f30300000000000000000000000000000000000000000000
389-0108af0003000000ef0300000000000009000000000000000000000000000000
390-6e6574207469746c650000001600af0001005000010050000000000000000000
391-0a0014002c01c800000000000900af0001005000000000000000000000000000
392-0000000000000000000000001300af0000010000010050000000000000000000
393-0000000000000000000000001c00af0001005000f30300000000000000000000
394-0000000000000000000000000108b00003000000ef0300000000000009000000
395-0000000000000000000000006e6574207469746c650000001600b00001005000
396-0100500000000000000000000a0014002c01c800000000000900b00001005000
397-0000000000000000000000000000000000000000000000001300b00000010000
398-0100500000000000000000000000000000000000000000001c00b00001005000
399-f303000000000000000000000000000000000000000000000108b10003000000
385+1600b900010050000100500000000000000000000a0014002c01c80000000000
386+0900b90001005000000000000000000000000000000000000000000000000000
387+1300b90000010000010050000000000000000000000000000000000000000000
388+1c00b90001005000f30300000000000000000000000000000000000000000000
389+0108ba0003000000ef0300000000000009000000000000000000000000000000
390+6e6574207469746c650000001600ba0001005000010050000000000000000000
391+0a0014002c01c800000000000900ba0001005000000000000000000000000000
392+0000000000000000000000001300ba0000010000010050000000000000000000
393+0000000000000000000000001c00ba0001005000f30300000000000000000000
394+0000000000000000000000000108bb0003000000ef0300000000000009000000
395+0000000000000000000000006e6574207469746c650000001600bb0001005000
396+0100500000000000000000000a0014002c01c800000000000900bb0001005000
397+0000000000000000000000000000000000000000000000001300bb0000010000
398+0100500000000000000000000000000000000000000000001c00bb0001005000
399+f303000000000000000000000000000000000000000000000108bc0003000000
400400 ef03000000000000090000000000000000000000000000006e6574207469746c
401-650000001600b100010050000100500000000000000000000a0014002c01c800
402-000000000900b100010050000000000000000000000000000000000000000000
403-000000001300b100000100000100500000000000000000000000000000000000
404-000000001c00b10001005000f303000000000000000000000000000000000000
405-000000000108b20003000000ef03000000000000090000000000000000000000
406-000000006e6574207469746c650000001600b200010050000100500000000000
407-000000000a0014002c01c800000000000900b200010050000000000000000000
408-000000000000000000000000000000001300b200000100000100500000000000
409-000000000000000000000000000000001c00b20001005000f303000000000000
410-000000000000000000000000000000000108b30003000000ef03000000000000
411-090000000000000000000000000000006e6574207469746c650000001600b300
412-010050000100500000000000000000000a0014002c01c800000000000900b300
413-010050000000000000000000000000000000000000000000000000001300b300
414-000100000100500000000000000000000000000000000000000000001c00b300
415-01005000f303000000000000000000000000000000000000000000000108b400
401+650000001600bc00010050000100500000000000000000000a0014002c01c800
402+000000000900bc00010050000000000000000000000000000000000000000000
403+000000001300bc00000100000100500000000000000000000000000000000000
404+000000001c00bc0001005000f303000000000000000000000000000000000000
405+000000000108bd0003000000ef03000000000000090000000000000000000000
406+000000006e6574207469746c650000001600bd00010050000100500000000000
407+000000000a0014002c01c800000000000900bd00010050000000000000000000
408+000000000000000000000000000000001300bd00000100000100500000000000
409+000000000000000000000000000000001c00bd0001005000f303000000000000
410+000000000000000000000000000000000108be0003000000ef03000000000000
411+090000000000000000000000000000006e6574207469746c650000001600be00
412+010050000100500000000000000000000a0014002c01c800000000000900be00
413+010050000000000000000000000000000000000000000000000000001300be00
414+000100000100500000000000000000000000000000000000000000001c00be00
415+01005000f303000000000000000000000000000000000000000000000108bf00
416416 03000000ef03000000000000090000000000000000000000000000006e657420
417-7469746c650000001600b400010050000100500000000000000000000a001400
418-2c01c800000000000900b4000100500000000000000000000000000000000000
419-00000000000000001300b4000001000001005000000000000000000000000000
420-00000000000000001c00b40001005000f3030000000000000000000000000000
421-00000000000000000108b50003000000ef030000000000000900000000000000
422-00000000000000006e6574207469746c650000001600b5000100500001005000
423-00000000000000000a0014002c01c800000000000900b5000100500000000000
424-00000000000000000000000000000000000000001300b5000001000001005000
425-00000000000000000000000000000000000000001c00b50001005000f3030000
426-00000000000000000000000000000000000000000108b60003000000ef030000
417+7469746c650000001600bf00010050000100500000000000000000000a001400
418+2c01c800000000000900bf000100500000000000000000000000000000000000
419+00000000000000001300bf000001000001005000000000000000000000000000
420+00000000000000001c00bf0001005000f3030000000000000000000000000000
421+00000000000000000108c00003000000ef030000000000000900000000000000
422+00000000000000006e6574207469746c650000001600c0000100500001005000
423+00000000000000000a0014002c01c800000000000900c0000100500000000000
424+00000000000000000000000000000000000000001300c0000001000001005000
425+00000000000000000000000000000000000000001c00c00001005000f3030000
426+00000000000000000000000000000000000000000108c10003000000ef030000
427427 00000000090000000000000000000000000000006e6574207469746c65000000
428-1600b600010050000100500000000000000000000a0014002c01c80000000000
429-0900b60001005000000000000000000000000000000000000000000000000000
430-1300b60000010000010050000000000000000000000000000000000000000000
431-1c00b60001005000f30300000000000000000000000000000000000000000000
432-0108b70003000000ef0300000000000009000000000000000000000000000000
433-6e6574207469746c650000001600b70001005000010050000000000000000000
434-0a0014002c01c800000000000900b70001005000000000000000000000000000
435-0000000000000000000000001300b70000010000010050000000000000000000
436-0000000000000000000000001c00b70001005000f30300000000000000000000
437-0000000000000000000000000108b80003000000ef0300000000000009000000
438-0000000000000000000000006e6574207469746c650000001600b80001005000
439-0100500000000000000000000a0014002c01c800000000000900b80001005000
440-0000000000000000000000000000000000000000000000001300b80000010000
441-0100500000000000000000000000000000000000000000001c00b80001005000
442-f303000000000000000000000000000000000000000000000108b90003000000
428+1600c100010050000100500000000000000000000a0014002c01c80000000000
429+0900c10001005000000000000000000000000000000000000000000000000000
430+1300c10000010000010050000000000000000000000000000000000000000000
431+1c00c10001005000f30300000000000000000000000000000000000000000000
432+0108c20003000000ef0300000000000009000000000000000000000000000000
433+6e6574207469746c650000001600c20001005000010050000000000000000000
434+0a0014002c01c800000000000900c20001005000000000000000000000000000
435+0000000000000000000000001300c20000010000010050000000000000000000
436+0000000000000000000000001c00c20001005000f30300000000000000000000
437+0000000000000000000000000108c30003000000ef0300000000000009000000
438+0000000000000000000000006e6574207469746c650000001600c30001005000
439+0100500000000000000000000a0014002c01c800000000000900c30001005000
440+0000000000000000000000000000000000000000000000001300c30000010000
441+0100500000000000000000000000000000000000000000001c00c30001005000
442+f303000000000000000000000000000000000000000000000108c40003000000
443443 ef03000000000000090000000000000000000000000000006e6574207469746c
444-650000001600b900010050000100500000000000000000000a0014002c01c800
445-000000000900b900010050000000000000000000000000000000000000000000
446-000000001300b900000100000100500000000000000000000000000000000000
447-000000001c00b90001005000f303000000000000000000000000000000000000
448-000000000108ba0003000000ef03000000000000090000000000000000000000
449-000000006e6574207469746c650000001600ba00010050000100500000000000
450-000000000a0014002c01c800000000000900ba00010050000000000000000000
451-000000000000000000000000000000001300ba00000100000100500000000000
452-000000000000000000000000000000001c00ba0001005000f303000000000000
453-000000000000000000000000000000000108bb0003000000ef03000000000000
454-090000000000000000000000000000006e6574207469746c650000001600bb00
455-010050000100500000000000000000000a0014002c01c800000000000900bb00
456-010050000000000000000000000000000000000000000000000000001300bb00
457-000100000100500000000000000000000000000000000000000000001c00bb00
458-01005000f303000000000000000000000000000000000000000000000108bc00
444+650000001600c400010050000100500000000000000000000a0014002c01c800
445+000000000900c400010050000000000000000000000000000000000000000000
446+000000001300c400000100000100500000000000000000000000000000000000
447+000000001c00c40001005000f303000000000000000000000000000000000000
448+000000000108c50003000000ef03000000000000090000000000000000000000
449+000000006e6574207469746c650000001600c500010050000100500000000000
450+000000000a0014002c01c800000000000900c500010050000000000000000000
451+000000000000000000000000000000001300c500000100000100500000000000
452+000000000000000000000000000000001c00c50001005000f303000000000000
453+000000000000000000000000000000000108c60003000000ef03000000000000
454+090000000000000000000000000000006e6574207469746c650000001600c600
455+010050000100500000000000000000000a0014002c01c800000000000900c600
456+010050000000000000000000000000000000000000000000000000001300c600
457+000100000100500000000000000000000000000000000000000000001c00c600
458+01005000f303000000000000000000000000000000000000000000000108c700
459459 03000000ef03000000000000090000000000000000000000000000006e657420
460-7469746c650000001600bc00010050000100500000000000000000000a001400
461-2c01c800000000000900bc000100500000000000000000000000000000000000
462-00000000000000001300bc000001000001005000000000000000000000000000
463-00000000000000001c00bc0001005000f3030000000000000000000000000000
464-00000000000000000108bd0003000000ef030000000000000900000000000000
465-00000000000000006e6574207469746c650000001600bd000100500001005000
466-00000000000000000a0014002c01c800000000000900bd000100500000000000
467-00000000000000000000000000000000000000001300bd000001000001005000
468-00000000000000000000000000000000000000001c00bd0001005000f3030000
469-00000000000000000000000000000000000000000108be0003000000ef030000
460+7469746c650000001600c700010050000100500000000000000000000a001400
461+2c01c800000000000900c7000100500000000000000000000000000000000000
462+00000000000000001300c7000001000001005000000000000000000000000000
463+00000000000000001c00c70001005000f3030000000000000000000000000000
464+00000000000000000108c80003000000ef030000000000000900000000000000
465+00000000000000006e6574207469746c650000001600c8000100500001005000
466+00000000000000000a0014002c01c800000000000900c8000100500000000000
467+00000000000000000000000000000000000000001300c8000001000001005000
468+00000000000000000000000000000000000000001c00c80001005000f3030000
469+00000000000000000000000000000000000000000108c90003000000ef030000
470470 00000000090000000000000000000000000000006e6574207469746c65000000
471-1600be00010050000100500000000000000000000a0014002c01c80000000000
472-0900be0001005000000000000000000000000000000000000000000000000000
473-1300be0000010000010050000000000000000000000000000000000000000000
474-1c00be0001005000f30300000000000000000000000000000000000000000000
475-0108bf0003000000ef0300000000000009000000000000000000000000000000
476-6e6574207469746c650000001600bf0001005000010050000000000000000000
477-0a0014002c01c800000000000900bf0001005000000000000000000000000000
478-0000000000000000000000001300bf0000010000010050000000000000000000
479-0000000000000000000000001c00bf0001005000f30300000000000000000000
480-0000000000000000000000000108c00003000000ef0300000000000009000000
481-0000000000000000000000006e6574207469746c650000001600c00001005000
482-0100500000000000000000000a0014002c01c800000000000900c00001005000
483-0000000000000000000000000000000000000000000000001300c00000010000
484-0100500000000000000000000000000000000000000000001c00c00001005000
485-f303000000000000000000000000000000000000000000000108c10003000000
471+1600c900010050000100500000000000000000000a0014002c01c80000000000
472+0900c90001005000000000000000000000000000000000000000000000000000
473+1300c90000010000010050000000000000000000000000000000000000000000
474+1c00c90001005000f30300000000000000000000000000000000000000000000
475+0108ca0003000000ef0300000000000009000000000000000000000000000000
476+6e6574207469746c650000001600ca0001005000010050000000000000000000
477+0a0014002c01c800000000000900ca0001005000000000000000000000000000
478+0000000000000000000000001300ca0000010000010050000000000000000000
479+0000000000000000000000001c00ca0001005000f30300000000000000000000
480+0000000000000000000000000108cb0003000000ef0300000000000009000000
481+0000000000000000000000006e6574207469746c650000001600cb0001005000
482+0100500000000000000000000a0014002c01c800000000000900cb0001005000
483+0000000000000000000000000000000000000000000000001300cb0000010000
484+0100500000000000000000000000000000000000000000001c00cb0001005000
485+f303000000000000000000000000000000000000000000000108cc0003000000
486486 ef03000000000000090000000000000000000000000000006e6574207469746c
487-650000001600c100010050000100500000000000000000000a0014002c01c800
488-000000000900c100010050000000000000000000000000000000000000000000
489-000000001300c100000100000100500000000000000000000000000000000000
490-000000001c00c10001005000f303000000000000000000000000000000000000
491-000000000108c20003000000ef03000000000000090000000000000000000000
492-000000006e6574207469746c650000001600c200010050000100500000000000
493-000000000a0014002c01c800000000000900c200010050000000000000000000
494-000000000000000000000000000000001300c200000100000100500000000000
495-000000000000000000000000000000001c00c20001005000f303000000000000
496-000000000000000000000000000000000108c30003000000ef03000000000000
497-090000000000000000000000000000006e6574207469746c650000001600c300
498-010050000100500000000000000000000a0014002c01c800000000000900c300
499-010050000000000000000000000000000000000000000000000000001300c300
500-000100000100500000000000000000000000000000000000000000001c00c300
501-01005000f303000000000000000000000000000000000000000000000108c400
487+650000001600cc00010050000100500000000000000000000a0014002c01c800
488+000000000900cc00010050000000000000000000000000000000000000000000
489+000000001300cc00000100000100500000000000000000000000000000000000
490+000000001c00cc0001005000f303000000000000000000000000000000000000
491+000000000108cd0003000000ef03000000000000090000000000000000000000
492+000000006e6574207469746c650000001600cd00010050000100500000000000
493+000000000a0014002c01c800000000000900cd00010050000000000000000000
494+000000000000000000000000000000001300cd00000100000100500000000000
495+000000000000000000000000000000001c00cd0001005000f303000000000000
496+000000000000000000000000000000000108ce0003000000ef03000000000000
497+090000000000000000000000000000006e6574207469746c650000001600ce00
498+010050000100500000000000000000000a0014002c01c800000000000900ce00
499+010050000000000000000000000000000000000000000000000000001300ce00
500+000100000100500000000000000000000000000000000000000000001c00ce00
501+01005000f303000000000000000000000000000000000000000000000108cf00
502502 03000000ef03000000000000090000000000000000000000000000006e657420
503-7469746c650000001600c400010050000100500000000000000000000a001400
504-2c01c800000000000900c4000100500000000000000000000000000000000000
505-00000000000000001300c4000001000001005000000000000000000000000000
506-00000000000000001c00c40001005000f3030000000000000000000000000000
507-00000000000000000108c50003000000ef030000000000000900000000000000
508-00000000000000006e6574207469746c650000001600c5000100500001005000
509-00000000000000000a0014002c01c800000000000900c5000100500000000000
510-00000000000000000000000000000000000000001300c5000001000001005000
511-00000000000000000000000000000000000000001c00c50001005000f3030000
512-00000000000000000000000000000000000000000108c60003000000ef030000
503+7469746c650000001600cf00010050000100500000000000000000000a001400
504+2c01c800000000000900cf000100500000000000000000000000000000000000
505+00000000000000001300cf000001000001005000000000000000000000000000
506+00000000000000001c00cf0001005000f3030000000000000000000000000000
507+00000000000000000108d00003000000ef030000000000000900000000000000
508+00000000000000006e6574207469746c650000001600d0000100500001005000
509+00000000000000000a0014002c01c800000000000900d0000100500000000000
510+00000000000000000000000000000000000000001300d0000001000001005000
511+00000000000000000000000000000000000000001c00d00001005000f3030000
512+00000000000000000000000000000000000000000108d10003000000ef030000
513513 00000000090000000000000000000000000000006e6574207469746c65000000
514-1600c600010050000100500000000000000000000a0014002c01c80000000000
515-0900c60001005000000000000000000000000000000000000000000000000000
516-1300c60000010000010050000000000000000000000000000000000000000000
517-1c00c60001005000f30300000000000000000000000000000000000000000000
518-0108c70003000000ef0300000000000009000000000000000000000000000000
519-6e6574207469746c650000001600c70001005000010050000000000000000000
520-0a0014002c01c800000000000900c70001005000000000000000000000000000
521-0000000000000000000000001300c70000010000010050000000000000000000
522-0000000000000000000000001c00c70001005000f30300000000000000000000
523-0000000000000000000000000108c80003000000ef0300000000000009000000
524-0000000000000000000000006e6574207469746c650000001600c80001005000
525-0100500000000000000000000a0014002c01c800000000000900c80001005000
526-0000000000000000000000000000000000000000000000001300c80000010000
527-0100500000000000000000000000000000000000000000001c00c80001005000
528-f303000000000000000000000000000000000000000000000108c90003000000
514+1600d100010050000100500000000000000000000a0014002c01c80000000000
515+0900d10001005000000000000000000000000000000000000000000000000000
516+1300d10000010000010050000000000000000000000000000000000000000000
517+1c00d10001005000f30300000000000000000000000000000000000000000000
518+0108d20003000000ef0300000000000009000000000000000000000000000000
519+6e6574207469746c650000001600d20001005000010050000000000000000000
520+0a0014002c01c800000000000900d20001005000000000000000000000000000
521+0000000000000000000000001300d20000010000010050000000000000000000
522+0000000000000000000000001c00d20001005000f30300000000000000000000
523+0000000000000000000000000108d30003000000ef0300000000000009000000
524+0000000000000000000000006e6574207469746c650000001600d30001005000
525+0100500000000000000000000a0014002c01c800000000000900d30001005000
526+0000000000000000000000000000000000000000000000001300d30000010000
527+0100500000000000000000000000000000000000000000001c00d30001005000
528+f303000000000000000000000000000000000000000000000108d40003000000
529529 ef03000000000000090000000000000000000000000000006e6574207469746c
530-650000001600c900010050000100500000000000000000000a0014002c01c800
531-000000000900c900010050000000000000000000000000000000000000000000
532-000000001300c900000100000100500000000000000000000000000000000000
533-000000001c00c90001005000f303000000000000000000000000000000000000
534-000000000108ca0003000000ef03000000000000090000000000000000000000
535-000000006e6574207469746c650000001600ca00010050000100500000000000
536-000000000a0014002c01c800000000000900ca00010050000000000000000000
537-000000000000000000000000000000001300ca00000100000100500000000000
538-000000000000000000000000000000001c00ca0001005000f303000000000000
539-000000000000000000000000000000000108cb0003000000ef03000000000000
540-090000000000000000000000000000006e6574207469746c650000001600cb00
541-010050000100500000000000000000000a0014002c01c800000000000900cb00
542-010050000000000000000000000000000000000000000000000000001300cb00
543-000100000100500000000000000000000000000000000000000000001c00cb00
544-01005000f303000000000000000000000000000000000000000000000108cc00
530+650000001600d400010050000100500000000000000000000a0014002c01c800
531+000000000900d400010050000000000000000000000000000000000000000000
532+000000001300d400000100000100500000000000000000000000000000000000
533+000000001c00d40001005000f303000000000000000000000000000000000000
534+000000000108d50003000000ef03000000000000090000000000000000000000
535+000000006e6574207469746c650000001600d500010050000100500000000000
536+000000000a0014002c01c800000000000900d500010050000000000000000000
537+000000000000000000000000000000001300d500000100000100500000000000
538+000000000000000000000000000000001c00d50001005000f303000000000000
539+000000000000000000000000000000000108d60003000000ef03000000000000
540+090000000000000000000000000000006e6574207469746c650000001600d600
541+010050000100500000000000000000000a0014002c01c800000000000900d600
542+010050000000000000000000000000000000000000000000000000001300d600
543+000100000100500000000000000000000000000000000000000000001c00d600
544+01005000f303000000000000000000000000000000000000000000000108d700
545545 03000000ef03000000000000090000000000000000000000000000006e657420
546-7469746c650000001600cc00010050000100500000000000000000000a001400
547-2c01c800000000000900cc000100500000000000000000000000000000000000
548-00000000000000001300cc000001000001005000000000000000000000000000
549-00000000000000001c00cc0001005000f3030000000000000000000000000000
550-00000000000000000108cd0003000000ef030000000000000900000000000000
551-00000000000000006e6574207469746c650000001600cd000100500001005000
552-00000000000000000a0014002c01c800000000000900cd000100500000000000
553-00000000000000000000000000000000000000001300cd000001000001005000
554-00000000000000000000000000000000000000001c00cd0001005000f3030000
555-00000000000000000000000000000000000000000108ce0003000000ef030000
546+7469746c650000001600d700010050000100500000000000000000000a001400
547+2c01c800000000000900d7000100500000000000000000000000000000000000
548+00000000000000001300d7000001000001005000000000000000000000000000
549+00000000000000001c00d70001005000f3030000000000000000000000000000
550+00000000000000000108d80003000000ef030000000000000900000000000000
551+00000000000000006e6574207469746c650000001600d8000100500001005000
552+00000000000000000a0014002c01c800000000000900d8000100500000000000
553+00000000000000000000000000000000000000001300d8000001000001005000
554+00000000000000000000000000000000000000001c00d80001005000f3030000
555+00000000000000000000000000000000000000000108d90003000000ef030000
556556 00000000090000000000000000000000000000006e6574207469746c65000000
557-1600ce00010050000100500000000000000000000a0014002c01c80000000000
558-0900ce0001005000000000000000000000000000000000000000000000000000
559-1300ce0000010000010050000000000000000000000000000000000000000000
560-1c00ce0001005000f30300000000000000000000000000000000000000000000
561-0108cf0003000000ef0300000000000009000000000000000000000000000000
562-6e6574207469746c650000001600cf0001005000010050000000000000000000
563-0a0014002c01c800000000000900cf0001005000000000000000000000000000
564-0000000000000000000000001300cf0000010000010050000000000000000000
565-0000000000000000000000001c00cf0001005000f30300000000000000000000
566-0000000000000000000000000108d00003000000ef0300000000000009000000
567-0000000000000000000000006e6574207469746c650000001600d00001005000
568-0100500000000000000000000a0014002c01c800000000000900d00001005000
569-0000000000000000000000000000000000000000000000001300d00000010000
570-0100500000000000000000000000000000000000000000001c00d00001005000
571-f303000000000000000000000000000000000000000000000108d10003000000
557+1600d900010050000100500000000000000000000a0014002c01c80000000000
558+0900d90001005000000000000000000000000000000000000000000000000000
559+1300d90000010000010050000000000000000000000000000000000000000000
560+1c00d90001005000f30300000000000000000000000000000000000000000000
561+0108da0003000000ef0300000000000009000000000000000000000000000000
562+6e6574207469746c650000001600da0001005000010050000000000000000000
563+0a0014002c01c800000000000900da0001005000000000000000000000000000
564+0000000000000000000000001300da0000010000010050000000000000000000
565+0000000000000000000000001c00da0001005000f30300000000000000000000
566+0000000000000000000000000108db0003000000ef0300000000000009000000
567+0000000000000000000000006e6574207469746c650000001600db0001005000
568+0100500000000000000000000a0014002c01c800000000000900db0001005000
569+0000000000000000000000000000000000000000000000001300db0000010000
570+0100500000000000000000000000000000000000000000001c00db0001005000
571+f303000000000000000000000000000000000000000000000108dc0003000000
572572 ef03000000000000090000000000000000000000000000006e6574207469746c
573-650000001600d100010050000100500000000000000000000a0014002c01c800
574-000000000900d100010050000000000000000000000000000000000000000000
575-000000001300d100000100000100500000000000000000000000000000000000
576-000000001c00d10001005000f303000000000000000000000000000000000000
577-000000000108d20003000000ef03000000000000090000000000000000000000
578-000000006e6574207469746c650000001600d200010050000100500000000000
579-000000000a0014002c01c800000000000900d200010050000000000000000000
580-000000000000000000000000000000001300d200000100000100500000000000
581-000000000000000000000000000000001c00d20001005000f303000000000000
582-000000000000000000000000000000000108d30003000000ef03000000000000
583-090000000000000000000000000000006e6574207469746c650000001600d300
584-010050000100500000000000000000000a0014002c01c800000000000900d300
585-010050000000000000000000000000000000000000000000000000001300d300
586-000100000100500000000000000000000000000000000000000000001c00d300
587-01005000f303000000000000000000000000000000000000000000000108d400
573+650000001600dc00010050000100500000000000000000000a0014002c01c800
574+000000000900dc00010050000000000000000000000000000000000000000000
575+000000001300dc00000100000100500000000000000000000000000000000000
576+000000001c00dc0001005000f303000000000000000000000000000000000000
577+000000000108dd0003000000ef03000000000000090000000000000000000000
578+000000006e6574207469746c650000001600dd00010050000100500000000000
579+000000000a0014002c01c800000000000900dd00010050000000000000000000
580+000000000000000000000000000000001300dd00000100000100500000000000
581+000000000000000000000000000000001c00dd0001005000f303000000000000
582+000000000000000000000000000000000108de0003000000ef03000000000000
583+090000000000000000000000000000006e6574207469746c650000001600de00
584+010050000100500000000000000000000a0014002c01c800000000000900de00
585+010050000000000000000000000000000000000000000000000000001300de00
586+000100000100500000000000000000000000000000000000000000001c00de00
587+01005000f303000000000000000000000000000000000000000000000108df00
588588 03000000ef03000000000000090000000000000000000000000000006e657420
589-7469746c650000001600d400010050000100500000000000000000000a001400
590-2c01c800000000000900d4000100500000000000000000000000000000000000
591-00000000000000001300d4000001000001005000000000000000000000000000
592-00000000000000001c00d40001005000f3030000000000000000000000000000
593-00000000000000000108d50003000000ef030000000000000900000000000000
594-00000000000000006e6574207469746c650000001600d5000100500001005000
595-00000000000000000a0014002c01c800000000000900d5000100500000000000
596-00000000000000000000000000000000000000001300d5000001000001005000
597-00000000000000000000000000000000000000001c00d50001005000f3030000
598-00000000000000000000000000000000000000000108d60003000000ef030000
589+7469746c650000001600df00010050000100500000000000000000000a001400
590+2c01c800000000000900df000100500000000000000000000000000000000000
591+00000000000000001300df000001000001005000000000000000000000000000
592+00000000000000001c00df0001005000f3030000000000000000000000000000
593+00000000000000000108e00003000000ef030000000000000900000000000000
594+00000000000000006e6574207469746c650000001600e0000100500001005000
595+00000000000000000a0014002c01c800000000000900e0000100500000000000
596+00000000000000000000000000000000000000001300e0000001000001005000
597+00000000000000000000000000000000000000001c00e00001005000f3030000
598+00000000000000000000000000000000000000000108e10003000000ef030000
599599 00000000090000000000000000000000000000006e6574207469746c65000000
600-1600d600010050000100500000000000000000000a0014002c01c80000000000
601-0900d60001005000000000000000000000000000000000000000000000000000
602-1300d60000010000010050000000000000000000000000000000000000000000
603-1c00d60001005000f30300000000000000000000000000000000000000000000
604-0108d70003000000ef0300000000000009000000000000000000000000000000
605-6e6574207469746c650000001600d70001005000010050000000000000000000
606-0a0014002c01c800000000000900d70001005000000000000000000000000000
607-0000000000000000000000001300d70000010000010050000000000000000000
608-0000000000000000000000001c00d70001005000f30300000000000000000000
609-0000000000000000000000000108d80003000000ef0300000000000009000000
610-0000000000000000000000006e6574207469746c650000001600d80001005000
611-0100500000000000000000000a0014002c01c800000000000900d80001005000
612-0000000000000000000000000000000000000000000000001300d80000010000
613-0100500000000000000000000000000000000000000000001c00d80001005000
614-f303000000000000000000000000000000000000000000000108d90003000000
600+1600e100010050000100500000000000000000000a0014002c01c80000000000
601+0900e10001005000000000000000000000000000000000000000000000000000
602+1300e10000010000010050000000000000000000000000000000000000000000
603+1c00e10001005000f30300000000000000000000000000000000000000000000
604+0108e20003000000ef0300000000000009000000000000000000000000000000
605+6e6574207469746c650000001600e20001005000010050000000000000000000
606+0a0014002c01c800000000000900e20001005000000000000000000000000000
607+0000000000000000000000001300e20000010000010050000000000000000000
608+0000000000000000000000001c00e20001005000f30300000000000000000000
609+0000000000000000000000000108e30003000000ef0300000000000009000000
610+0000000000000000000000006e6574207469746c650000001600e30001005000
611+0100500000000000000000000a0014002c01c800000000000900e30001005000
612+0000000000000000000000000000000000000000000000001300e30000010000
613+0100500000000000000000000000000000000000000000001c00e30001005000
614+f303000000000000000000000000000000000000000000000108e40003000000
615615 ef03000000000000090000000000000000000000000000006e6574207469746c
616-650000001600d900010050000100500000000000000000000a0014002c01c800
617-000000000900d900010050000000000000000000000000000000000000000000
618-000000001300d900000100000100500000000000000000000000000000000000
619-000000001c00d90001005000f303000000000000000000000000000000000000
620-000000000108da0003000000ef03000000000000090000000000000000000000
621-000000006e6574207469746c650000001600da00010050000100500000000000
622-000000000a0014002c01c800000000000900da00010050000000000000000000
623-000000000000000000000000000000001300da00000100000100500000000000
624-000000000000000000000000000000001c00da0001005000f303000000000000
625-000000000000000000000000000000000108db0003000000ef03000000000000
626-090000000000000000000000000000006e6574207469746c650000001600db00
627-010050000100500000000000000000000a0014002c01c800000000000900db00
628-010050000000000000000000000000000000000000000000000000001300db00
629-000100000100500000000000000000000000000000000000000000001c00db00
630-01005000f303000000000000000000000000000000000000000000000108dc00
616+650000001600e400010050000100500000000000000000000a0014002c01c800
617+000000000900e400010050000000000000000000000000000000000000000000
618+000000001300e400000100000100500000000000000000000000000000000000
619+000000001c00e40001005000f303000000000000000000000000000000000000
620+000000000108e50003000000ef03000000000000090000000000000000000000
621+000000006e6574207469746c650000001600e500010050000100500000000000
622+000000000a0014002c01c800000000000900e500010050000000000000000000
623+000000000000000000000000000000001300e500000100000100500000000000
624+000000000000000000000000000000001c00e50001005000f303000000000000
625+000000000000000000000000000000000108e60003000000ef03000000000000
626+090000000000000000000000000000006e6574207469746c650000001600e600
627+010050000100500000000000000000000a0014002c01c800000000000900e600
628+010050000000000000000000000000000000000000000000000000001300e600
629+000100000100500000000000000000000000000000000000000000001c00e600
630+01005000f303000000000000000000000000000000000000000000000108e700
631631 03000000ef03000000000000090000000000000000000000000000006e657420
632-7469746c650000001600dc00010050000100500000000000000000000a001400
633-2c01c800000000000900dc000100500000000000000000000000000000000000
634-00000000000000001300dc000001000001005000000000000000000000000000
635-00000000000000001c00dc0001005000f3030000000000000000000000000000
636-00000000000000000108dd0003000000ef030000000000000900000000000000
637-00000000000000006e6574207469746c650000001600dd000100500001005000
638-00000000000000000a0014002c01c800000000000900dd000100500000000000
639-00000000000000000000000000000000000000001300dd000001000001005000
640-00000000000000000000000000000000000000001c00dd0001005000f3030000
641-00000000000000000000000000000000000000000108de0003000000ef030000
632+7469746c650000001600e700010050000100500000000000000000000a001400
633+2c01c800000000000900e7000100500000000000000000000000000000000000
634+00000000000000001300e7000001000001005000000000000000000000000000
635+00000000000000001c00e70001005000f3030000000000000000000000000000
636+00000000000000000108e80003000000ef030000000000000900000000000000
637+00000000000000006e6574207469746c650000001600e8000100500001005000
638+00000000000000000a0014002c01c800000000000900e8000100500000000000
639+00000000000000000000000000000000000000001300e8000001000001005000
640+00000000000000000000000000000000000000001c00e80001005000f3030000
641+00000000000000000000000000000000000000000108e90003000000ef030000
642642 00000000090000000000000000000000000000006e6574207469746c65000000
643-1600de00010050000100500000000000000000000a0014002c01c80000000000
644-0900de0001005000000000000000000000000000000000000000000000000000
645-1300de0000010000010050000000000000000000000000000000000000000000
646-1c00de0001005000f30300000000000000000000000000000000000000000000
647-0108df0003000000ef0300000000000009000000000000000000000000000000
648-6e6574207469746c650000001600df0001005000010050000000000000000000
649-0a0014002c01c800000000000900df0001005000000000000000000000000000
650-0000000000000000000000001300df0000010000010050000000000000000000
651-0000000000000000000000001c00df0001005000f30300000000000000000000
652-0000000000000000000000000108e00003000000ef0300000000000009000000
653-0000000000000000000000006e6574207469746c650000001600e00001005000
654-0100500000000000000000000a0014002c01c800000000000900e00001005000
655-0000000000000000000000000000000000000000000000001300e00000010000
656-0100500000000000000000000000000000000000000000001c00e00001005000
657-f303000000000000000000000000000000000000000000000108e10003000000
643+1600e900010050000100500000000000000000000a0014002c01c80000000000
644+0900e90001005000000000000000000000000000000000000000000000000000
645+1300e90000010000010050000000000000000000000000000000000000000000
646+1c00e90001005000f30300000000000000000000000000000000000000000000
647+0108ea0003000000ef0300000000000009000000000000000000000000000000
648+6e6574207469746c650000001600ea0001005000010050000000000000000000
649+0a0014002c01c800000000000900ea0001005000000000000000000000000000
650+0000000000000000000000001300ea0000010000010050000000000000000000
651+0000000000000000000000001c00ea0001005000f30300000000000000000000
652+0000000000000000000000000108eb0003000000ef0300000000000009000000
653+0000000000000000000000006e6574207469746c650000001600eb0001005000
654+0100500000000000000000000a0014002c01c800000000000900eb0001005000
655+0000000000000000000000000000000000000000000000001300eb0000010000
656+0100500000000000000000000000000000000000000000001c00eb0001005000
657+f303000000000000000000000000000000000000000000000108ec0003000000
658658 ef03000000000000090000000000000000000000000000006e6574207469746c
659-650000001600e100010050000100500000000000000000000a0014002c01c800
660-000000000900e100010050000000000000000000000000000000000000000000
661-000000001300e100000100000100500000000000000000000000000000000000
662-000000001c00e10001005000f303000000000000000000000000000000000000
663-000000000108e20003000000ef03000000000000090000000000000000000000
664-000000006e6574207469746c650000001600e200010050000100500000000000
665-000000000a0014002c01c800000000000900e200010050000000000000000000
666-000000000000000000000000000000001300e200000100000100500000000000
667-000000000000000000000000000000001c00e20001005000f303000000000000
668-000000000000000000000000000000000108e30003000000ef03000000000000
669-090000000000000000000000000000006e6574207469746c650000001600e300
670-010050000100500000000000000000000a0014002c01c800000000000900e300
671-010050000000000000000000000000000000000000000000000000001300e300
672-000100000100500000000000000000000000000000000000000000001c00e300
673-01005000f303000000000000000000000000000000000000000000000108e400
659+650000001600ec00010050000100500000000000000000000a0014002c01c800
660+000000000900ec00010050000000000000000000000000000000000000000000
661+000000001300ec00000100000100500000000000000000000000000000000000
662+000000001c00ec0001005000f303000000000000000000000000000000000000
663+000000000108ed0003000000ef03000000000000090000000000000000000000
664+000000006e6574207469746c650000001600ed00010050000100500000000000
665+000000000a0014002c01c800000000000900ed00010050000000000000000000
666+000000000000000000000000000000001300ed00000100000100500000000000
667+000000000000000000000000000000001c00ed0001005000f303000000000000
668+000000000000000000000000000000000108ee0003000000ef03000000000000
669+090000000000000000000000000000006e6574207469746c650000001600ee00
670+010050000100500000000000000000000a0014002c01c800000000000900ee00
671+010050000000000000000000000000000000000000000000000000001300ee00
672+000100000100500000000000000000000000000000000000000000001c00ee00
673+01005000f303000000000000000000000000000000000000000000000108ef00
674674 03000000ef03000000000000090000000000000000000000000000006e657420
675-7469746c650000001600e400010050000100500000000000000000000a001400
676-2c01c800000000000900e4000100500000000000000000000000000000000000
677-00000000000000001300e4000001000001005000000000000000000000000000
678-00000000000000001c00e40001005000f3030000000000000000000000000000
679-00000000000000000108e50003000000ef030000000000000900000000000000
680-00000000000000006e6574207469746c650000001600e5000100500001005000
681-00000000000000000a0014002c01c800000000000900e5000100500000000000
682-00000000000000000000000000000000000000001300e5000001000001005000
683-00000000000000000000000000000000000000001c00e50001005000f3030000
684-00000000000000000000000000000000000000000108e60003000000ef030000
675+7469746c650000001600ef00010050000100500000000000000000000a001400
676+2c01c800000000000900ef000100500000000000000000000000000000000000
677+00000000000000001300ef000001000001005000000000000000000000000000
678+00000000000000001c00ef0001005000f3030000000000000000000000000000
679+00000000000000000108f00003000000ef030000000000000900000000000000
680+00000000000000006e6574207469746c650000001600f0000100500001005000
681+00000000000000000a0014002c01c800000000000900f0000100500000000000
682+00000000000000000000000000000000000000001300f0000001000001005000
683+00000000000000000000000000000000000000001c00f00001005000f3030000
684+00000000000000000000000000000000000000000108f10003000000ef030000
685685 00000000090000000000000000000000000000006e6574207469746c65000000
686-1600e600010050000100500000000000000000000a0014002c01c80000000000
687-0900e60001005000000000000000000000000000000000000000000000000000
688-1300e60000010000010050000000000000000000000000000000000000000000
689-1c00e60001005000f30300000000000000000000000000000000000000000000
690-0108e70003000000ef0300000000000009000000000000000000000000000000
691-6e6574207469746c650000001600e70001005000010050000000000000000000
692-0a0014002c01c800000000000900e70001005000000000000000000000000000
693-0000000000000000000000001300e70000010000010050000000000000000000
694-0000000000000000000000001c00e70001005000f30300000000000000000000
695-0000000000000000000000000108e80003000000ef0300000000000009000000
696-0000000000000000000000006e6574207469746c650000001600e80001005000
697-0100500000000000000000000a0014002c01c800000000000900e80001005000
698-0000000000000000000000000000000000000000000000001300e80000010000
699-0100500000000000000000000000000000000000000000001c00e80001005000
700-f303000000000000000000000000000000000000000000000108e90003000000
686+1600f100010050000100500000000000000000000a0014002c01c80000000000
687+0900f10001005000000000000000000000000000000000000000000000000000
688+1300f10000010000010050000000000000000000000000000000000000000000
689+1c00f10001005000f30300000000000000000000000000000000000000000000
690+0108f20003000000ef0300000000000009000000000000000000000000000000
691+6e6574207469746c650000001600f20001005000010050000000000000000000
692+0a0014002c01c800000000000900f20001005000000000000000000000000000
693+0000000000000000000000001300f20000010000010050000000000000000000
694+0000000000000000000000001c00f20001005000f30300000000000000000000
695+0000000000000000000000000108f30003000000ef0300000000000009000000
696+0000000000000000000000006e6574207469746c650000001600f30001005000
697+0100500000000000000000000a0014002c01c800000000000900f30001005000
698+0000000000000000000000000000000000000000000000001300f30000010000
699+0100500000000000000000000000000000000000000000001c00f30001005000
700+f303000000000000000000000000000000000000000000000108f40003000000
701701 ef03000000000000090000000000000000000000000000006e6574207469746c
702-650000001600e900010050000100500000000000000000000a0014002c01c800
703-000000000900e900010050000000000000000000000000000000000000000000
704-000000001300e900000100000100500000000000000000000000000000000000
705-000000001c00e90001005000f303000000000000000000000000000000000000
706-000000000108ea0003000000ef03000000000000090000000000000000000000
707-000000006e6574207469746c650000001600ea00010050000100500000000000
708-000000000a0014002c01c800000000000900ea00010050000000000000000000
709-000000000000000000000000000000001300ea00000100000100500000000000
710-000000000000000000000000000000001c00ea0001005000f303000000000000
711-000000000000000000000000000000000108eb0003000000ef03000000000000
712-090000000000000000000000000000006e6574207469746c650000001600eb00
713-010050000100500000000000000000000a0014002c01c800000000000900eb00
714-010050000000000000000000000000000000000000000000000000001300eb00
715-000100000100500000000000000000000000000000000000000000001c00eb00
716-01005000f303000000000000000000000000000000000000000000000108ec00
702+650000001600f400010050000100500000000000000000000a0014002c01c800
703+000000000900f400010050000000000000000000000000000000000000000000
704+000000001300f400000100000100500000000000000000000000000000000000
705+000000001c00f40001005000f303000000000000000000000000000000000000
706+000000000108f50003000000ef03000000000000090000000000000000000000
707+000000006e6574207469746c650000001600f500010050000100500000000000
708+000000000a0014002c01c800000000000900f500010050000000000000000000
709+000000000000000000000000000000001300f500000100000100500000000000
710+000000000000000000000000000000001c00f50001005000f303000000000000
711+000000000000000000000000000000000108f60003000000ef03000000000000
712+090000000000000000000000000000006e6574207469746c650000001600f600
713+010050000100500000000000000000000a0014002c01c800000000000900f600
714+010050000000000000000000000000000000000000000000000000001300f600
715+000100000100500000000000000000000000000000000000000000001c00f600
716+01005000f303000000000000000000000000000000000000000000000108f700
717717 03000000ef03000000000000090000000000000000000000000000006e657420
718-7469746c650000001600ec00010050000100500000000000000000000a001400
719-2c01c800000000000900ec000100500000000000000000000000000000000000
720-00000000000000001300ec000001000001005000000000000000000000000000
721-00000000000000001c00ec0001005000f3030000000000000000000000000000
722-00000000000000000108ed0003000000ef030000000000000900000000000000
723-00000000000000006e6574207469746c650000001600ed000100500001005000
724-00000000000000000a0014002c01c800000000000900ed000100500000000000
725-00000000000000000000000000000000000000001300ed000001000001005000
726-00000000000000000000000000000000000000001c00ed0001005000f3030000
727-00000000000000000000000000000000000000000108ee0003000000ef030000
718+7469746c650000001600f700010050000100500000000000000000000a001400
719+2c01c800000000000900f7000100500000000000000000000000000000000000
720+00000000000000001300f7000001000001005000000000000000000000000000
721+00000000000000001c00f70001005000f3030000000000000000000000000000
722+00000000000000000108f80003000000ef030000000000000900000000000000
723+00000000000000006e6574207469746c650000001600f8000100500001005000
724+00000000000000000a0014002c01c800000000000900f8000100500000000000
725+00000000000000000000000000000000000000001300f8000001000001005000
726+00000000000000000000000000000000000000001c00f80001005000f3030000
727+00000000000000000000000000000000000000000108f90003000000ef030000
728728 00000000090000000000000000000000000000006e6574207469746c65000000
729-1600ee00010050000100500000000000000000000a0014002c01c80000000000
730-0900ee0001005000000000000000000000000000000000000000000000000000
731-1300ee0000010000010050000000000000000000000000000000000000000000
732-1c00ee0001005000f30300000000000000000000000000000000000000000000
733-0108ef0003000000ef0300000000000009000000000000000000000000000000
734-6e6574207469746c650000001600ef0001005000010050000000000000000000
735-0a0014002c01c800000000000900ef0001005000000000000000000000000000
736-0000000000000000000000001300ef0000010000010050000000000000000000
737-0000000000000000000000001c00ef0001005000f30300000000000000000000
738-0000000000000000000000000108f00003000000ef0300000000000009000000
739-0000000000000000000000006e6574207469746c650000001600f00001005000
740-0100500000000000000000000a0014002c01c800000000000900f00001005000
741-0000000000000000000000000000000000000000000000001300f00000010000
742-0100500000000000000000000000000000000000000000001c00f00001005000
743-f303000000000000000000000000000000000000000000000108f10003000000
729+1600f900010050000100500000000000000000000a0014002c01c80000000000
730+0900f90001005000000000000000000000000000000000000000000000000000
731+1300f90000010000010050000000000000000000000000000000000000000000
732+1c00f90001005000f30300000000000000000000000000000000000000000000
733+0108fa0003000000ef0300000000000009000000000000000000000000000000
734+6e6574207469746c650000001600fa0001005000010050000000000000000000
735+0a0014002c01c800000000000900fa0001005000000000000000000000000000
736+0000000000000000000000001300fa0000010000010050000000000000000000
737+0000000000000000000000001c00fa0001005000f30300000000000000000000
738+0000000000000000000000000108fb0003000000ef0300000000000009000000
739+0000000000000000000000006e6574207469746c650000001600fb0001005000
740+0100500000000000000000000a0014002c01c800000000000900fb0001005000
741+0000000000000000000000000000000000000000000000001300fb0000010000
742+0100500000000000000000000000000000000000000000001c00fb0001005000
743+f303000000000000000000000000000000000000000000000108fc0003000000
744744 ef03000000000000090000000000000000000000000000006e6574207469746c
745-650000001600f100010050000100500000000000000000000a0014002c01c800
746-000000000900f100010050000000000000000000000000000000000000000000
747-000000001300f100000100000100500000000000000000000000000000000000
748-000000001c00f10001005000f303000000000000000000000000000000000000
749-000000000108f20003000000ef03000000000000090000000000000000000000
750-000000006e6574207469746c650000001600f200010050000100500000000000
751-000000000a0014002c01c800000000000900f200010050000000000000000000
752-000000000000000000000000000000001300f200000100000100500000000000
753-000000000000000000000000000000001c00f20001005000f303000000000000
754-000000000000000000000000000000000108f30003000000ef03000000000000
755-090000000000000000000000000000006e6574207469746c650000001600f300
756-010050000100500000000000000000000a0014002c01c800000000000900f300
757-010050000000000000000000000000000000000000000000000000001300f300
758-000100000100500000000000000000000000000000000000000000001c00f300
759-01005000f303000000000000000000000000000000000000000000000108f400
745+650000001600fc00010050000100500000000000000000000a0014002c01c800
746+000000000900fc00010050000000000000000000000000000000000000000000
747+000000001300fc00000100000100500000000000000000000000000000000000
748+000000001c00fc0001005000f303000000000000000000000000000000000000
749+000000000108fd0003000000ef03000000000000090000000000000000000000
750+000000006e6574207469746c650000001600fd00010050000100500000000000
751+000000000a0014002c01c800000000000900fd00010050000000000000000000
752+000000000000000000000000000000001300fd00000100000100500000000000
753+000000000000000000000000000000001c00fd0001005000f303000000000000
754+000000000000000000000000000000000108fe0003000000ef03000000000000
755+090000000000000000000000000000006e6574207469746c650000001600fe00
756+010050000100500000000000000000000a0014002c01c800000000000900fe00
757+010050000000000000000000000000000000000000000000000000001300fe00
758+000100000100500000000000000000000000000000000000000000001c00fe00
759+01005000f303000000000000000000000000000000000000000000000108ff00
760760 03000000ef03000000000000090000000000000000000000000000006e657420
761-7469746c650000001600f400010050000100500000000000000000000a001400
762-2c01c800000000000900f4000100500000000000000000000000000000000000
763-00000000000000001300f4000001000001005000000000000000000000000000
764-00000000000000001c00f40001005000f3030000000000000000000000000000
765-00000000000000000108f50003000000ef030000000000000900000000000000
766-00000000000000006e6574207469746c650000001600f5000100500001005000
767-00000000000000000a0014002c01c800000000000900f5000100500000000000
768-00000000000000000000000000000000000000001300f5000001000001005000
769-00000000000000000000000000000000000000001c00f50001005000f3030000
770-00000000000000000000000000000000000000000108f60003000000ef030000
761+7469746c650000001600ff00010050000100500000000000000000000a001400
762+2c01c800000000000900ff000100500000000000000000000000000000000000
763+00000000000000001300ff000001000001005000000000000000000000000000
764+00000000000000001c00ff0001005000f3030000000000000000000000000000
765+00000000000000000108000103000000ef030000000000000900000000000000
766+00000000000000006e6574207469746c65000000160000010100500001005000
767+00000000000000000a0014002c01c80000000000090000010100500000000000
768+0000000000000000000000000000000000000000130000010001000001005000
769+00000000000000000000000000000000000000001c00000101005000f3030000
770+00000000000000000000000000000000000000000108010103000000ef030000
771771 00000000090000000000000000000000000000006e6574207469746c65000000
772-1600f600010050000100500000000000000000000a0014002c01c80000000000
773-0900f60001005000000000000000000000000000000000000000000000000000
774-1300f60000010000010050000000000000000000000000000000000000000000
775-1c00f60001005000f30300000000000000000000000000000000000000000000
776-0108f70003000000ef0300000000000009000000000000000000000000000000
777-6e6574207469746c650000001600f70001005000010050000000000000000000
778-0a0014002c01c800000000000900f70001005000000000000000000000000000
779-0000000000000000000000001300f70000010000010050000000000000000000
780-0000000000000000000000001c00f70001005000f30300000000000000000000
781-0000000000000000000000000108f80003000000ef0300000000000009000000
782-0000000000000000000000006e6574207469746c650000001600f80001005000
783-0100500000000000000000000a0014002c01c800000000000900f80001005000
784-0000000000000000000000000000000000000000000000001300f80000010000
785-0100500000000000000000000000000000000000000000001c00f80001005000
786-f303000000000000000000000000000000000000000000000108f90003000000
772+16000101010050000100500000000000000000000a0014002c01c80000000000
773+0900010101005000000000000000000000000000000000000000000000000000
774+1300010100010000010050000000000000000000000000000000000000000000
775+1c00010101005000f30300000000000000000000000000000000000000000000
776+0108020103000000ef0300000000000009000000000000000000000000000000
777+6e6574207469746c650000001600020101005000010050000000000000000000
778+0a0014002c01c800000000000900020101005000000000000000000000000000
779+0000000000000000000000001300020100010000010050000000000000000000
780+0000000000000000000000001c00020101005000f30300000000000000000000
781+0000000000000000000000000108030103000000ef0300000000000009000000
782+0000000000000000000000006e6574207469746c650000001600030101005000
783+0100500000000000000000000a0014002c01c800000000000900030101005000
784+0000000000000000000000000000000000000000000000001300030100010000
785+0100500000000000000000000000000000000000000000001c00030101005000
786+f303000000000000000000000000000000000000000000000108040103000000
787787 ef03000000000000090000000000000000000000000000006e6574207469746c
788-650000001600f900010050000100500000000000000000000a0014002c01c800
789-000000000900f900010050000000000000000000000000000000000000000000
790-000000001300f900000100000100500000000000000000000000000000000000
791-000000001c00f90001005000f303000000000000000000000000000000000000
792-000000000108fa0003000000ef03000000000000090000000000000000000000
793-000000006e6574207469746c650000001600fa00010050000100500000000000
794-000000000a0014002c01c800000000000900fa00010050000000000000000000
795-000000000000000000000000000000001300fa00000100000100500000000000
796-000000000000000000000000000000001c00fa0001005000f303000000000000
797-000000000000000000000000000000000108fb0003000000ef03000000000000
798-090000000000000000000000000000006e6574207469746c650000001600fb00
799-010050000100500000000000000000000a0014002c01c800000000000900fb00
800-010050000000000000000000000000000000000000000000000000001300fb00
801-000100000100500000000000000000000000000000000000000000001c00fb00
802-01005000f303000000000000000000000000000000000000000000000108fc00
788+6500000016000401010050000100500000000000000000000a0014002c01c800
789+0000000009000401010050000000000000000000000000000000000000000000
790+0000000013000401000100000100500000000000000000000000000000000000
791+000000001c00040101005000f303000000000000000000000000000000000000
792+000000000108050103000000ef03000000000000090000000000000000000000
793+000000006e6574207469746c6500000016000501010050000100500000000000
794+000000000a0014002c01c8000000000009000501010050000000000000000000
795+0000000000000000000000000000000013000501000100000100500000000000
796+000000000000000000000000000000001c00050101005000f303000000000000
797+000000000000000000000000000000000108060103000000ef03000000000000
798+090000000000000000000000000000006e6574207469746c6500000016000601
799+010050000100500000000000000000000a0014002c01c8000000000009000601
800+0100500000000000000000000000000000000000000000000000000013000601
801+000100000100500000000000000000000000000000000000000000001c000601
802+01005000f3030000000000000000000000000000000000000000000001080701
803803 03000000ef03000000000000090000000000000000000000000000006e657420
804-7469746c650000001600fc00010050000100500000000000000000000a001400
805-2c01c800000000000900fc000100500000000000000000000000000000000000
806-00000000000000001300fc000001000001005000000000000000000000000000
807-00000000000000001c00fc0001005000f3030000000000000000000000000000
808-00000000000000000108fd0003000000ef030000000000000900000000000000
809-00000000000000006e6574207469746c650000001600fd000100500001005000
810-00000000000000000a0014002c01c800000000000900fd000100500000000000
811-00000000000000000000000000000000000000001300fd000001000001005000
812-00000000000000000000000000000000000000001c00fd0001005000f3030000
813-00000000000000000000000000000000000000000108fe0003000000ef030000
804+7469746c6500000016000701010050000100500000000000000000000a001400
805+2c01c80000000000090007010100500000000000000000000000000000000000
806+0000000000000000130007010001000001005000000000000000000000000000
807+00000000000000001c00070101005000f3030000000000000000000000000000
808+00000000000000000108080103000000ef030000000000000900000000000000
809+00000000000000006e6574207469746c65000000160008010100500001005000
810+00000000000000000a0014002c01c80000000000090008010100500000000000
811+0000000000000000000000000000000000000000130008010001000001005000
812+00000000000000000000000000000000000000001c00080101005000f3030000
813+00000000000000000000000000000000000000000108090103000000ef030000
814814 00000000090000000000000000000000000000006e6574207469746c65000000
815-1600fe00010050000100500000000000000000000a0014002c01c80000000000
816-0900fe0001005000000000000000000000000000000000000000000000000000
817-1300fe0000010000010050000000000000000000000000000000000000000000
818-1c00fe0001005000f30300000000000000000000000000000000000000000000
819-0108ff0003000000ef0300000000000009000000000000000000000000000000
820-6e6574207469746c650000001600ff0001005000010050000000000000000000
821-0a0014002c01c800000000000900ff0001005000000000000000000000000000
822-0000000000000000000000001300ff0000010000010050000000000000000000
823-0000000000000000000000001c00ff0001005000f30300000000000000000000
824-0000000000000000000000000108000103000000ef0300000000000009000000
825-0000000000000000000000006e6574207469746c650000001600000101005000
826-0100500000000000000000000a0014002c01c800000000000900000101005000
827-0000000000000000000000000000000000000000000000001300000100010000
828-0100500000000000000000000000000000000000000000001c00000101005000
829-f303000000000000000000000000000000000000000000000108010103000000
815+16000901010050000100500000000000000000000a0014002c01c80000000000
816+0900090101005000000000000000000000000000000000000000000000000000
817+1300090100010000010050000000000000000000000000000000000000000000
818+1c00090101005000f30300000000000000000000000000000000000000000000
819+01080a0103000000ef0300000000000009000000000000000000000000000000
820+6e6574207469746c6500000016000a0101005000010050000000000000000000
821+0a0014002c01c8000000000009000a0101005000000000000000000000000000
822+00000000000000000000000013000a0100010000010050000000000000000000
823+0000000000000000000000001c000a0101005000f30300000000000000000000
824+00000000000000000000000001080b0103000000ef0300000000000009000000
825+0000000000000000000000006e6574207469746c6500000016000b0101005000
826+0100500000000000000000000a0014002c01c8000000000009000b0101005000
827+00000000000000000000000000000000000000000000000013000b0100010000
828+0100500000000000000000000000000000000000000000001c000b0101005000
829+f3030000000000000000000000000000000000000000000001080c0103000000
830830 ef03000000000000090000000000000000000000000000006e6574207469746c
831-6500000016000101010050000100500000000000000000000a0014002c01c800
832-0000000009000101010050000000000000000000000000000000000000000000
833-0000000013000101000100000100500000000000000000000000000000000000
834-000000001c00010101005000f303000000000000000000000000000000000000
835-000000000108020103000000ef03000000000000090000000000000000000000
836-000000006e6574207469746c6500000016000201010050000100500000000000
837-000000000a0014002c01c8000000000009000201010050000000000000000000
838-0000000000000000000000000000000013000201000100000100500000000000
839-000000000000000000000000000000001c00020101005000f303000000000000
840-000000000000000000000000000000000108030103000000ef03000000000000
841-090000000000000000000000000000006e6574207469746c6500000016000301
842-010050000100500000000000000000000a0014002c01c8000000000009000301
843-0100500000000000000000000000000000000000000000000000000013000301
844-000100000100500000000000000000000000000000000000000000001c000301
845-01005000f3030000000000000000000000000000000000000000000001080401
831+6500000016000c01010050000100500000000000000000000a0014002c01c800
832+0000000009000c01010050000000000000000000000000000000000000000000
833+0000000013000c01000100000100500000000000000000000000000000000000
834+000000001c000c0101005000f303000000000000000000000000000000000000
835+0000000001080d0103000000ef03000000000000090000000000000000000000
836+000000006e6574207469746c6500000016000d01010050000100500000000000
837+000000000a0014002c01c8000000000009000d01010050000000000000000000
838+0000000000000000000000000000000013000d01000100000100500000000000
839+000000000000000000000000000000001c000d0101005000f303000000000000
840+0000000000000000000000000000000001080e0103000000ef03000000000000
841+090000000000000000000000000000006e6574207469746c6500000016000e01
842+010050000100500000000000000000000a0014002c01c8000000000009000e01
843+0100500000000000000000000000000000000000000000000000000013000e01
844+000100000100500000000000000000000000000000000000000000001c000e01
845+01005000f3030000000000000000000000000000000000000000000001080f01
846846 03000000ef03000000000000090000000000000000000000000000006e657420
847-7469746c6500000016000401010050000100500000000000000000000a001400
848-2c01c80000000000090004010100500000000000000000000000000000000000
849-0000000000000000130004010001000001005000000000000000000000000000
850-00000000000000001c00040101005000f3030000000000000000000000000000
851-00000000000000000108050103000000ef030000000000000900000000000000
852-00000000000000006e6574207469746c65000000160005010100500001005000
853-00000000000000000a0014002c01c80000000000090005010100500000000000
854-0000000000000000000000000000000000000000130005010001000001005000
855-00000000000000000000000000000000000000001c00050101005000f3030000
856-00000000000000000000000000000000000000000108060103000000ef030000
847+7469746c6500000016000f01010050000100500000000000000000000a001400
848+2c01c8000000000009000f010100500000000000000000000000000000000000
849+000000000000000013000f010001000001005000000000000000000000000000
850+00000000000000001c000f0101005000f3030000000000000000000000000000
851+00000000000000000108100103000000ef030000000000000900000000000000
852+00000000000000006e6574207469746c65000000160010010100500001005000
853+00000000000000000a0014002c01c80000000000090010010100500000000000
854+0000000000000000000000000000000000000000130010010001000001005000
855+00000000000000000000000000000000000000001c00100101005000f3030000
856+00000000000000000000000000000000000000000108110103000000ef030000
857857 00000000090000000000000000000000000000006e6574207469746c65000000
858-16000601010050000100500000000000000000000a0014002c01c80000000000
859-0900060101005000000000000000000000000000000000000000000000000000
860-1300060100010000010050000000000000000000000000000000000000000000
861-1c00060101005000f30300000000000000000000000000000000000000000000
862-0108070103000000ef0300000000000009000000000000000000000000000000
863-6e6574207469746c650000001600070101005000010050000000000000000000
864-0a0014002c01c800000000000900070101005000000000000000000000000000
865-0000000000000000000000001300070100010000010050000000000000000000
866-0000000000000000000000001c00070101005000f30300000000000000000000
867-0000000000000000000000000108080103000000ef0300000000000009000000
868-0000000000000000000000006e6574207469746c650000001600080101005000
869-0100500000000000000000000a0014002c01c800000000000900080101005000
870-0000000000000000000000000000000000000000000000001300080100010000
871-0100500000000000000000000000000000000000000000001c00080101005000
872-f303000000000000000000000000000000000000000000000108090103000000
858+16001101010050000100500000000000000000000a0014002c01c80000000000
859+0900110101005000000000000000000000000000000000000000000000000000
860+1300110100010000010050000000000000000000000000000000000000000000
861+1c00110101005000f30300000000000000000000000000000000000000000000
862+0108120103000000ef0300000000000009000000000000000000000000000000
863+6e6574207469746c650000001600120101005000010050000000000000000000
864+0a0014002c01c800000000000900120101005000000000000000000000000000
865+0000000000000000000000001300120100010000010050000000000000000000
866+0000000000000000000000001c00120101005000f30300000000000000000000
867+0000000000000000000000000108130103000000ef0300000000000009000000
868+0000000000000000000000006e6574207469746c650000001600130101005000
869+0100500000000000000000000a0014002c01c800000000000900130101005000
870+0000000000000000000000000000000000000000000000001300130100010000
871+0100500000000000000000000000000000000000000000001c00130101005000
872+f303000000000000000000000000000000000000000000000108140103000000
873873 ef03000000000000090000000000000000000000000000006e6574207469746c
874-6500000016000901010050000100500000000000000000000a0014002c01c800
875-0000000009000901010050000000000000000000000000000000000000000000
876-0000000013000901000100000100500000000000000000000000000000000000
877-000000001c00090101005000f303000000000000000000000000000000000000
878-0000000001080a0103000000ef03000000000000090000000000000000000000
879-000000006e6574207469746c6500000016000a01010050000100500000000000
880-000000000a0014002c01c8000000000009000a01010050000000000000000000
881-0000000000000000000000000000000013000a01000100000100500000000000
882-000000000000000000000000000000001c000a0101005000f303000000000000
883-0000000000000000000000000000000001080b0103000000ef03000000000000
884-090000000000000000000000000000006e6574207469746c6500000016000b01
885-010050000100500000000000000000000a0014002c01c8000000000009000b01
886-0100500000000000000000000000000000000000000000000000000013000b01
887-000100000100500000000000000000000000000000000000000000001c000b01
888-01005000f3030000000000000000000000000000000000000000000001080c01
874+6500000016001401010050000100500000000000000000000a0014002c01c800
875+0000000009001401010050000000000000000000000000000000000000000000
876+0000000013001401000100000100500000000000000000000000000000000000
877+000000001c00140101005000f303000000000000000000000000000000000000
878+000000000108150103000000ef03000000000000090000000000000000000000
879+000000006e6574207469746c6500000016001501010050000100500000000000
880+000000000a0014002c01c8000000000009001501010050000000000000000000
881+0000000000000000000000000000000013001501000100000100500000000000
882+000000000000000000000000000000001c00150101005000f303000000000000
883+000000000000000000000000000000000108160103000000ef03000000000000
884+090000000000000000000000000000006e6574207469746c6500000016001601
885+010050000100500000000000000000000a0014002c01c8000000000009001601
886+0100500000000000000000000000000000000000000000000000000013001601
887+000100000100500000000000000000000000000000000000000000001c001601
888+01005000f3030000000000000000000000000000000000000000000001081701
889889 03000000ef03000000000000090000000000000000000000000000006e657420
890-7469746c6500000016000c01010050000100500000000000000000000a001400
891-2c01c8000000000009000c010100500000000000000000000000000000000000
892-000000000000000013000c010001000001005000000000000000000000000000
893-00000000000000001c000c0101005000f3030000000000000000000000000000
894-000000000000000001080d0103000000ef030000000000000900000000000000
895-00000000000000006e6574207469746c6500000016000d010100500001005000
896-00000000000000000a0014002c01c8000000000009000d010100500000000000
897-000000000000000000000000000000000000000013000d010001000001005000
898-00000000000000000000000000000000000000001c000d0101005000f3030000
899-000000000000000000000000000000000000000001080e0103000000ef030000
890+7469746c6500000016001701010050000100500000000000000000000a001400
891+2c01c80000000000090017010100500000000000000000000000000000000000
892+0000000000000000130017010001000001005000000000000000000000000000
893+00000000000000001c00170101005000f3030000000000000000000000000000
894+00000000000000000108180103000000ef030000000000000900000000000000
895+00000000000000006e6574207469746c65000000160018010100500001005000
896+00000000000000000a0014002c01c80000000000090018010100500000000000
897+0000000000000000000000000000000000000000130018010001000001005000
898+00000000000000000000000000000000000000001c00180101005000f3030000
899+00000000000000000000000000000000000000000108190103000000ef030000
900900 00000000090000000000000000000000000000006e6574207469746c65000000
901-16000e01010050000100500000000000000000000a0014002c01c80000000000
902-09000e0101005000000000000000000000000000000000000000000000000000
903-13000e0100010000010050000000000000000000000000000000000000000000
904-1c000e0101005000f30300000000000000000000000000000000000000000000
905-01080f0103000000ef0300000000000009000000000000000000000000000000
906-6e6574207469746c6500000016000f0101005000010050000000000000000000
907-0a0014002c01c8000000000009000f0101005000000000000000000000000000
908-00000000000000000000000013000f0100010000010050000000000000000000
909-0000000000000000000000001c000f0101005000f30300000000000000000000
910-0000000000000000000000000108100103000000ef0300000000000009000000
911-0000000000000000000000006e6574207469746c650000001600100101005000
912-0100500000000000000000000a0014002c01c800000000000900100101005000
913-0000000000000000000000000000000000000000000000001300100100010000
914-0100500000000000000000000000000000000000000000001c00100101005000
915-f303000000000000000000000000000000000000000000000108110103000000
901+16001901010050000100500000000000000000000a0014002c01c80000000000
902+0900190101005000000000000000000000000000000000000000000000000000
903+1300190100010000010050000000000000000000000000000000000000000000
904+1c00190101005000f30300000000000000000000000000000000000000000000
905+01081a0103000000ef0300000000000009000000000000000000000000000000
906+6e6574207469746c6500000016001a0101005000010050000000000000000000
907+0a0014002c01c8000000000009001a0101005000000000000000000000000000
908+00000000000000000000000013001a0100010000010050000000000000000000
909+0000000000000000000000001c001a0101005000f30300000000000000000000
910+00000000000000000000000001081b0103000000ef0300000000000009000000
911+0000000000000000000000006e6574207469746c6500000016001b0101005000
912+0100500000000000000000000a0014002c01c8000000000009001b0101005000
913+00000000000000000000000000000000000000000000000013001b0100010000
914+0100500000000000000000000000000000000000000000001c001b0101005000
915+f3030000000000000000000000000000000000000000000001081c0103000000
916916 ef03000000000000090000000000000000000000000000006e6574207469746c
917-6500000016001101010050000100500000000000000000000a0014002c01c800
918-0000000009001101010050000000000000000000000000000000000000000000
919-0000000013001101000100000100500000000000000000000000000000000000
920-000000001c00110101005000f303000000000000000000000000000000000000
921-000000000108120103000000ef03000000000000090000000000000000000000
922-000000006e6574207469746c6500000016001201010050000100500000000000
923-000000000a0014002c01c8000000000009001201010050000000000000000000
924-0000000000000000000000000000000013001201000100000100500000000000
925-000000000000000000000000000000001c00120101005000f303000000000000
926-000000000000000000000000000000000108130103000000ef03000000000000
927-090000000000000000000000000000006e6574207469746c6500000016001301
928-010050000100500000000000000000000a0014002c01c8000000000009001301
929-0100500000000000000000000000000000000000000000000000000013001301
930-000100000100500000000000000000000000000000000000000000001c001301
931-01005000f3030000000000000000000000000000000000000000000001081401
917+6500000016001c01010050000100500000000000000000000a0014002c01c800
918+0000000009001c01010050000000000000000000000000000000000000000000
919+0000000013001c01000100000100500000000000000000000000000000000000
920+000000001c001c0101005000f303000000000000000000000000000000000000
921+0000000001081d0103000000ef03000000000000090000000000000000000000
922+000000006e6574207469746c6500000016001d01010050000100500000000000
923+000000000a0014002c01c8000000000009001d01010050000000000000000000
924+0000000000000000000000000000000013001d01000100000100500000000000
925+000000000000000000000000000000001c001d0101005000f303000000000000
926+0000000000000000000000000000000001081e0103000000ef03000000000000
927+090000000000000000000000000000006e6574207469746c6500000016001e01
928+010050000100500000000000000000000a0014002c01c8000000000009001e01
929+0100500000000000000000000000000000000000000000000000000013001e01
930+000100000100500000000000000000000000000000000000000000001c001e01
931+01005000f3030000000000000000000000000000000000000000000001081f01
932932 03000000ef03000000000000090000000000000000000000000000006e657420
933-7469746c6500000016001401010050000100500000000000000000000a001400
934-2c01c80000000000090014010100500000000000000000000000000000000000
935-0000000000000000130014010001000001005000000000000000000000000000
936-00000000000000001c00140101005000f3030000000000000000000000000000
937-00000000000000000108150103000000ef030000000000000900000000000000
938-00000000000000006e6574207469746c65000000160015010100500001005000
939-00000000000000000a0014002c01c80000000000090015010100500000000000
940-0000000000000000000000000000000000000000130015010001000001005000
941-00000000000000000000000000000000000000001c00150101005000f3030000
942-00000000000000000000000000000000000000000108160103000000ef030000
933+7469746c6500000016001f01010050000100500000000000000000000a001400
934+2c01c8000000000009001f010100500000000000000000000000000000000000
935+000000000000000013001f010001000001005000000000000000000000000000
936+00000000000000001c001f0101005000f3030000000000000000000000000000
937+00000000000000000108200103000000ef030000000000000900000000000000
938+00000000000000006e6574207469746c65000000160020010100500001005000
939+00000000000000000a0014002c01c80000000000090020010100500000000000
940+0000000000000000000000000000000000000000130020010001000001005000
941+00000000000000000000000000000000000000001c00200101005000f3030000
942+00000000000000000000000000000000000000000108210103000000ef030000
943943 00000000090000000000000000000000000000006e6574207469746c65000000
944-16001601010050000100500000000000000000000a0014002c01c80000000000
945-0900160101005000000000000000000000000000000000000000000000000000
946-1300160100010000010050000000000000000000000000000000000000000000
947-1c00160101005000f30300000000000000000000000000000000000000000000
948-0108170103000000ef0300000000000009000000000000000000000000000000
949-6e6574207469746c650000001600170101005000010050000000000000000000
950-0a0014002c01c800000000000900170101005000000000000000000000000000
951-0000000000000000000000001300170100010000010050000000000000000000
952-0000000000000000000000001c00170101005000f30300000000000000000000
953-0000000000000000000000000108180103000000ef0300000000000009000000
954-0000000000000000000000006e6574207469746c650000001600180101005000
955-0100500000000000000000000a0014002c01c800000000000900180101005000
956-0000000000000000000000000000000000000000000000001300180100010000
957-0100500000000000000000000000000000000000000000001c00180101005000
958-f303000000000000000000000000000000000000000000000108190103000000
944+16002101010050000100500000000000000000000a0014002c01c80000000000
945+0900210101005000000000000000000000000000000000000000000000000000
946+1300210100010000010050000000000000000000000000000000000000000000
947+1c00210101005000f30300000000000000000000000000000000000000000000
948+0108220103000000ef0300000000000009000000000000000000000000000000
949+6e6574207469746c650000001600220101005000010050000000000000000000
950+0a0014002c01c800000000000900220101005000000000000000000000000000
951+0000000000000000000000001300220100010000010050000000000000000000
952+0000000000000000000000001c00220101005000f30300000000000000000000
953+0000000000000000000000000108230103000000ef0300000000000009000000
954+0000000000000000000000006e6574207469746c650000001600230101005000
955+0100500000000000000000000a0014002c01c800000000000900230101005000
956+0000000000000000000000000000000000000000000000001300230100010000
957+0100500000000000000000000000000000000000000000001c00230101005000
958+f303000000000000000000000000000000000000000000000108240103000000
959959 ef03000000000000090000000000000000000000000000006e6574207469746c
960-6500000016001901010050000100500000000000000000000a0014002c01c800
961-0000000009001901010050000000000000000000000000000000000000000000
962-0000000013001901000100000100500000000000000000000000000000000000
963-000000001c00190101005000f303000000000000000000000000000000000000
964-0000000001081a0103000000ef03000000000000090000000000000000000000
965-000000006e6574207469746c6500000016001a01010050000100500000000000
966-000000000a0014002c01c8000000000009001a01010050000000000000000000
967-0000000000000000000000000000000013001a01000100000100500000000000
968-000000000000000000000000000000001c001a0101005000f303000000000000
969-0000000000000000000000000000000001081b0103000000ef03000000000000
970-090000000000000000000000000000006e6574207469746c6500000016001b01
971-010050000100500000000000000000000a0014002c01c8000000000009001b01
972-0100500000000000000000000000000000000000000000000000000013001b01
973-000100000100500000000000000000000000000000000000000000001c001b01
974-01005000f3030000000000000000000000000000000000000000000001081c01
960+6500000016002401010050000100500000000000000000000a0014002c01c800
961+0000000009002401010050000000000000000000000000000000000000000000
962+0000000013002401000100000100500000000000000000000000000000000000
963+000000001c00240101005000f303000000000000000000000000000000000000
964+000000000108250103000000ef03000000000000090000000000000000000000
965+000000006e6574207469746c6500000016002501010050000100500000000000
966+000000000a0014002c01c8000000000009002501010050000000000000000000
967+0000000000000000000000000000000013002501000100000100500000000000
968+000000000000000000000000000000001c00250101005000f303000000000000
969+000000000000000000000000000000000108260103000000ef03000000000000
970+090000000000000000000000000000006e6574207469746c6500000016002601
971+010050000100500000000000000000000a0014002c01c8000000000009002601
972+0100500000000000000000000000000000000000000000000000000013002601
973+000100000100500000000000000000000000000000000000000000001c002601
974+01005000f3030000000000000000000000000000000000000000000001082701
975975 03000000ef03000000000000090000000000000000000000000000006e657420
976-7469746c6500000016001c01010050000100500000000000000000000a001400
977-2c01c8000000000009001c010100500000000000000000000000000000000000
978-000000000000000013001c010001000001005000000000000000000000000000
979-00000000000000001c001c0101005000f3030000000000000000000000000000
980-000000000000000001081d0103000000ef030000000000000900000000000000
981-00000000000000006e6574207469746c6500000016001d010100500001005000
982-00000000000000000a0014002c01c8000000000009001d010100500000000000
983-000000000000000000000000000000000000000013001d010001000001005000
984-00000000000000000000000000000000000000001c001d0101005000f3030000
985-000000000000000000000000000000000000000001081e0103000000ef030000
976+7469746c6500000016002701010050000100500000000000000000000a001400
977+2c01c80000000000090027010100500000000000000000000000000000000000
978+0000000000000000130027010001000001005000000000000000000000000000
979+00000000000000001c00270101005000f3030000000000000000000000000000
980+00000000000000000108280103000000ef030000000000000900000000000000
981+00000000000000006e6574207469746c65000000160028010100500001005000
982+00000000000000000a0014002c01c80000000000090028010100500000000000
983+0000000000000000000000000000000000000000130028010001000001005000
984+00000000000000000000000000000000000000001c00280101005000f3030000
985+00000000000000000000000000000000000000000108290103000000ef030000
986986 00000000090000000000000000000000000000006e6574207469746c65000000
987-16001e01010050000100500000000000000000000a0014002c01c80000000000
988-09001e0101005000000000000000000000000000000000000000000000000000
989-13001e0100010000010050000000000000000000000000000000000000000000
990-1c001e0101005000f30300000000000000000000000000000000000000000000
991-01081f0103000000ef0300000000000009000000000000000000000000000000
992-6e6574207469746c6500000016001f0101005000010050000000000000000000
993-0a0014002c01c8000000000009001f0101005000000000000000000000000000
994-00000000000000000000000013001f0100010000010050000000000000000000
995-0000000000000000000000001c001f0101005000f30300000000000000000000
996-0000000000000000000000000108200103000000ef0300000000000009000000
997-0000000000000000000000006e6574207469746c650000001600200101005000
998-0100500000000000000000000a0014002c01c800000000000900200101005000
999-0000000000000000000000000000000000000000000000001300200100010000
1000-0100500000000000000000000000000000000000000000001c00200101005000
1001-f303000000000000000000000000000000000000000000000108210103000000
987+16002901010050000100500000000000000000000a0014002c01c80000000000
988+0900290101005000000000000000000000000000000000000000000000000000
989+1300290100010000010050000000000000000000000000000000000000000000
990+1c00290101005000f30300000000000000000000000000000000000000000000
991+01082a0103000000ef0300000000000009000000000000000000000000000000
992+6e6574207469746c6500000016002a0101005000010050000000000000000000
993+0a0014002c01c8000000000009002a0101005000000000000000000000000000
994+00000000000000000000000013002a0100010000010050000000000000000000
995+0000000000000000000000001c002a0101005000f30300000000000000000000
996+00000000000000000000000001082b0103000000ef0300000000000009000000
997+0000000000000000000000006e6574207469746c6500000016002b0101005000
998+0100500000000000000000000a0014002c01c8000000000009002b0101005000
999+00000000000000000000000000000000000000000000000013002b0100010000
1000+0100500000000000000000000000000000000000000000001c002b0101005000
1001+f3030000000000000000000000000000000000000000000001082c0103000000
10021002 ef03000000000000090000000000000000000000000000006e6574207469746c
1003-6500000016002101010050000100500000000000000000000a0014002c01c800
1004-0000000009002101010050000000000000000000000000000000000000000000
1005-0000000013002101000100000100500000000000000000000000000000000000
1006-000000001c00210101005000f303000000000000000000000000000000000000
1007-000000000108220103000000ef03000000000000090000000000000000000000
1008-000000006e6574207469746c6500000016002201010050000100500000000000
1009-000000000a0014002c01c8000000000009002201010050000000000000000000
1010-0000000000000000000000000000000013002201000100000100500000000000
1011-000000000000000000000000000000001c00220101005000f303000000000000
1012-000000000000000000000000000000000108230103000000ef03000000000000
1013-090000000000000000000000000000006e6574207469746c6500000016002301
1014-010050000100500000000000000000000a0014002c01c8000000000009002301
1015-0100500000000000000000000000000000000000000000000000000013002301
1016-000100000100500000000000000000000000000000000000000000001c002301
1017-01005000f3030000000000000000000000000000000000000000000001082401
1003+6500000016002c01010050000100500000000000000000000a0014002c01c800
1004+0000000009002c01010050000000000000000000000000000000000000000000
1005+0000000013002c01000100000100500000000000000000000000000000000000
1006+000000001c002c0101005000f303000000000000000000000000000000000000
1007+0000000001082d0103000000ef03000000000000090000000000000000000000
1008+000000006e6574207469746c6500000016002d01010050000100500000000000
1009+000000000a0014002c01c8000000000009002d01010050000000000000000000
1010+0000000000000000000000000000000013002d01000100000100500000000000
1011+000000000000000000000000000000001c002d0101005000f303000000000000
1012+0000000000000000000000000000000001082e0103000000ef03000000000000
1013+090000000000000000000000000000006e6574207469746c6500000016002e01
1014+010050000100500000000000000000000a0014002c01c8000000000009002e01
1015+0100500000000000000000000000000000000000000000000000000013002e01
1016+000100000100500000000000000000000000000000000000000000001c002e01
1017+01005000f3030000000000000000000000000000000000000000000001082f01
10181018 03000000ef03000000000000090000000000000000000000000000006e657420
1019-7469746c6500000016002401010050000100500000000000000000000a001400
1020-2c01c80000000000090024010100500000000000000000000000000000000000
1021-0000000000000000130024010001000001005000000000000000000000000000
1022-00000000000000001c00240101005000f3030000000000000000000000000000
1023-00000000000000000108250103000000ef030000000000000900000000000000
1024-00000000000000006e6574207469746c65000000160025010100500001005000
1025-00000000000000000a0014002c01c80000000000090025010100500000000000
1026-0000000000000000000000000000000000000000130025010001000001005000
1027-00000000000000000000000000000000000000001c00250101005000f3030000
1028-00000000000000000000000000000000000000000108260103000000ef030000
1019+7469746c6500000016002f01010050000100500000000000000000000a001400
1020+2c01c8000000000009002f010100500000000000000000000000000000000000
1021+000000000000000013002f010001000001005000000000000000000000000000
1022+00000000000000001c002f0101005000f3030000000000000000000000000000
1023+00000000000000000108300103000000ef030000000000000900000000000000
1024+00000000000000006e6574207469746c65000000160030010100500001005000
1025+00000000000000000a0014002c01c80000000000090030010100500000000000
1026+0000000000000000000000000000000000000000130030010001000001005000
1027+00000000000000000000000000000000000000001c00300101005000f3030000
1028+00000000000000000000000000000000000000000108310103000000ef030000
10291029 00000000090000000000000000000000000000006e6574207469746c65000000
1030-16002601010050000100500000000000000000000a0014002c01c80000000000
1031-0900260101005000000000000000000000000000000000000000000000000000
1032-1300260100010000010050000000000000000000000000000000000000000000
1033-1c00260101005000f30300000000000000000000000000000000000000000000
1034-0108270103000000ef0300000000000009000000000000000000000000000000
1035-6e6574207469746c650000001600270101005000010050000000000000000000
1036-0a0014002c01c800000000000900270101005000000000000000000000000000
1037-0000000000000000000000001300270100010000010050000000000000000000
1038-0000000000000000000000001c00270101005000f30300000000000000000000
1039-0000000000000000000000000108280103000000ef0300000000000009000000
1040-0000000000000000000000006e6574207469746c650000001600280101005000
1041-0100500000000000000000000a0014002c01c800000000000900280101005000
1042-0000000000000000000000000000000000000000000000001300280100010000
1043-0100500000000000000000000000000000000000000000001c00280101005000
1044-f303000000000000000000000000000000000000000000000108290103000000
1030+16003101010050000100500000000000000000000a0014002c01c80000000000
1031+0900310101005000000000000000000000000000000000000000000000000000
1032+1300310100010000010050000000000000000000000000000000000000000000
1033+1c00310101005000f30300000000000000000000000000000000000000000000
1034+0108320103000000ef0300000000000009000000000000000000000000000000
1035+6e6574207469746c650000001600320101005000010050000000000000000000
1036+0a0014002c01c800000000000900320101005000000000000000000000000000
1037+0000000000000000000000001300320100010000010050000000000000000000
1038+0000000000000000000000001c00320101005000f30300000000000000000000
1039+0000000000000000000000000108330103000000ef0300000000000009000000
1040+0000000000000000000000006e6574207469746c650000001600330101005000
1041+0100500000000000000000000a0014002c01c800000000000900330101005000
1042+0000000000000000000000000000000000000000000000001300330100010000
1043+0100500000000000000000000000000000000000000000001c00330101005000
1044+f303000000000000000000000000000000000000000000000108340103000000
10451045 ef03000000000000090000000000000000000000000000006e6574207469746c
1046-6500000016002901010050000100500000000000000000000a0014002c01c800
1047-0000000009002901010050000000000000000000000000000000000000000000
1048-0000000013002901000100000100500000000000000000000000000000000000
1049-000000001c00290101005000f303000000000000000000000000000000000000
1050-0000000001082a0103000000ef03000000000000090000000000000000000000
1051-000000006e6574207469746c6500000016002a01010050000100500000000000
1052-000000000a0014002c01c8000000000009002a01010050000000000000000000
1053-0000000000000000000000000000000013002a01000100000100500000000000
1054-000000000000000000000000000000001c002a0101005000f303000000000000
1055-0000000000000000000000000000000001082b0103000000ef03000000000000
1056-090000000000000000000000000000006e6574207469746c6500000016002b01
1057-010050000100500000000000000000000a0014002c01c8000000000009002b01
1058-0100500000000000000000000000000000000000000000000000000013002b01
1059-000100000100500000000000000000000000000000000000000000001c002b01
1060-01005000f3030000000000000000000000000000000000000000000001082c01
1046+6500000016003401010050000100500000000000000000000a0014002c01c800
1047+0000000009003401010050000000000000000000000000000000000000000000
1048+0000000013003401000100000100500000000000000000000000000000000000
1049+000000001c00340101005000f303000000000000000000000000000000000000
1050+000000000108350103000000ef03000000000000090000000000000000000000
1051+000000006e6574207469746c6500000016003501010050000100500000000000
1052+000000000a0014002c01c8000000000009003501010050000000000000000000
1053+0000000000000000000000000000000013003501000100000100500000000000
1054+000000000000000000000000000000001c00350101005000f303000000000000
1055+000000000000000000000000000000000108360103000000ef03000000000000
1056+090000000000000000000000000000006e6574207469746c6500000016003601
1057+010050000100500000000000000000000a0014002c01c8000000000009003601
1058+0100500000000000000000000000000000000000000000000000000013003601
1059+000100000100500000000000000000000000000000000000000000001c003601
1060+01005000f3030000000000000000000000000000000000000000000001083701
10611061 03000000ef03000000000000090000000000000000000000000000006e657420
1062-7469746c6500000016002c01010050000100500000000000000000000a001400
1063-2c01c8000000000009002c010100500000000000000000000000000000000000
1064-000000000000000013002c010001000001005000000000000000000000000000
1065-00000000000000001c002c0101005000f3030000000000000000000000000000
1066-000000000000000001082d0103000000ef030000000000000900000000000000
1067-00000000000000006e6574207469746c6500000016002d010100500001005000
1068-00000000000000000a0014002c01c8000000000009002d010100500000000000
1069-000000000000000000000000000000000000000013002d010001000001005000
1070-00000000000000000000000000000000000000001c002d0101005000f3030000
1071-000000000000000000000000000000000000000001082e0103000000ef030000
1062+7469746c6500000016003701010050000100500000000000000000000a001400
1063+2c01c80000000000090037010100500000000000000000000000000000000000
1064+0000000000000000130037010001000001005000000000000000000000000000
1065+00000000000000001c00370101005000f3030000000000000000000000000000
1066+00000000000000000108380103000000ef030000000000000900000000000000
1067+00000000000000006e6574207469746c65000000160038010100500001005000
1068+00000000000000000a0014002c01c80000000000090038010100500000000000
1069+0000000000000000000000000000000000000000130038010001000001005000
1070+00000000000000000000000000000000000000001c00380101005000f3030000
1071+00000000000000000000000000000000000000000108390103000000ef030000
10721072 00000000090000000000000000000000000000006e6574207469746c65000000
1073-16002e01010050000100500000000000000000000a0014002c01c80000000000
1074-09002e0101005000000000000000000000000000000000000000000000000000
1075-13002e0100010000010050000000000000000000000000000000000000000000
1076-1c002e0101005000f30300000000000000000000000000000000000000000000
1077-01082f0103000000ef0300000000000009000000000000000000000000000000
1078-6e6574207469746c6500000016002f0101005000010050000000000000000000
1079-0a0014002c01c8000000000009002f0101005000000000000000000000000000
1080-00000000000000000000000013002f0100010000010050000000000000000000
1081-0000000000000000000000001c002f0101005000f30300000000000000000000
1082-0000000000000000000000000108300103000000ef0300000000000009000000
1083-0000000000000000000000006e6574207469746c650000001600300101005000
1084-0100500000000000000000000a0014002c01c800000000000900300101005000
1085-0000000000000000000000000000000000000000000000001300300100010000
1086-0100500000000000000000000000000000000000000000001c00300101005000
1087-f303000000000000000000000000000000000000000000000108310103000000
1073+16003901010050000100500000000000000000000a0014002c01c80000000000
1074+0900390101005000000000000000000000000000000000000000000000000000
1075+1300390100010000010050000000000000000000000000000000000000000000
1076+1c00390101005000f30300000000000000000000000000000000000000000000
1077+01083a0103000000ef0300000000000009000000000000000000000000000000
1078+6e6574207469746c6500000016003a0101005000010050000000000000000000
1079+0a0014002c01c8000000000009003a0101005000000000000000000000000000
1080+00000000000000000000000013003a0100010000010050000000000000000000
1081+0000000000000000000000001c003a0101005000f30300000000000000000000
1082+00000000000000000000000001083b0103000000ef0300000000000009000000
1083+0000000000000000000000006e6574207469746c6500000016003b0101005000
1084+0100500000000000000000000a0014002c01c8000000000009003b0101005000
1085+00000000000000000000000000000000000000000000000013003b0100010000
1086+0100500000000000000000000000000000000000000000001c003b0101005000
1087+f3030000000000000000000000000000000000000000000001083c0103000000
10881088 ef03000000000000090000000000000000000000000000006e6574207469746c
1089-6500000016003101010050000100500000000000000000000a0014002c01c800
1090-0000000009003101010050000000000000000000000000000000000000000000
1091-0000000013003101000100000100500000000000000000000000000000000000
1092-000000001c00310101005000f303000000000000000000000000000000000000
1093-000000000108320103000000ef03000000000000090000000000000000000000
1094-000000006e6574207469746c6500000016003201010050000100500000000000
1095-000000000a0014002c01c8000000000009003201010050000000000000000000
1096-0000000000000000000000000000000013003201000100000100500000000000
1097-000000000000000000000000000000001c00320101005000f303000000000000
1098-000000000000000000000000000000000108330103000000ef03000000000000
1099-090000000000000000000000000000006e6574207469746c6500000016003301
1100-010050000100500000000000000000000a0014002c01c8000000000009003301
1101-0100500000000000000000000000000000000000000000000000000013003301
1102-000100000100500000000000000000000000000000000000000000001c003301
1103-01005000f3030000000000000000000000000000000000000000000001083401
1089+6500000016003c01010050000100500000000000000000000a0014002c01c800
1090+0000000009003c01010050000000000000000000000000000000000000000000
1091+0000000013003c01000100000100500000000000000000000000000000000000
1092+000000001c003c0101005000f303000000000000000000000000000000000000
1093+0000000001083d0103000000ef03000000000000090000000000000000000000
1094+000000006e6574207469746c6500000016003d01010050000100500000000000
1095+000000000a0014002c01c8000000000009003d01010050000000000000000000
1096+0000000000000000000000000000000013003d01000100000100500000000000
1097+000000000000000000000000000000001c003d0101005000f303000000000000
1098+0000000000000000000000000000000001083e0103000000ef03000000000000
1099+090000000000000000000000000000006e6574207469746c6500000016003e01
1100+010050000100500000000000000000000a0014002c01c8000000000009003e01
1101+0100500000000000000000000000000000000000000000000000000013003e01
1102+000100000100500000000000000000000000000000000000000000001c003e01
1103+01005000f3030000000000000000000000000000000000000000000001083f01
11041104 03000000ef03000000000000090000000000000000000000000000006e657420
1105-7469746c6500000016003401010050000100500000000000000000000a001400
1106-2c01c80000000000090034010100500000000000000000000000000000000000
1107-0000000000000000130034010001000001005000000000000000000000000000
1108-00000000000000001c00340101005000f3030000000000000000000000000000
1109-00000000000000000108350103000000ef030000000000000900000000000000
1110-00000000000000006e6574207469746c65000000160035010100500001005000
1111-00000000000000000a0014002c01c80000000000090035010100500000000000
1112-0000000000000000000000000000000000000000130035010001000001005000
1113-00000000000000000000000000000000000000001c00350101005000f3030000
1114-00000000000000000000000000000000000000000108360103000000ef030000
1105+7469746c6500000016003f01010050000100500000000000000000000a001400
1106+2c01c8000000000009003f010100500000000000000000000000000000000000
1107+000000000000000013003f010001000001005000000000000000000000000000
1108+00000000000000001c003f0101005000f3030000000000000000000000000000
1109+00000000000000000108400103000000ef030000000000000900000000000000
1110+00000000000000006e6574207469746c65000000160040010100500001005000
1111+00000000000000000a0014002c01c80000000000090040010100500000000000
1112+0000000000000000000000000000000000000000130040010001000001005000
1113+00000000000000000000000000000000000000001c00400101005000f3030000
1114+00000000000000000000000000000000000000000108410103000000ef030000
11151115 00000000090000000000000000000000000000006e6574207469746c65000000
1116-16003601010050000100500000000000000000000a0014002c01c80000000000
1117-0900360101005000000000000000000000000000000000000000000000000000
1118-1300360100010000010050000000000000000000000000000000000000000000
1119-1c00360101005000f30300000000000000000000000000000000000000000000
1120-0108370103000000ef0300000000000009000000000000000000000000000000
1121-6e6574207469746c650000001600370101005000010050000000000000000000
1122-0a0014002c01c800000000000900370101005000000000000000000000000000
1123-0000000000000000000000001300370100010000010050000000000000000000
1124-0000000000000000000000001c00370101005000f30300000000000000000000
1125-0000000000000000000000000108380103000000ef0300000000000009000000
1126-0000000000000000000000006e6574207469746c650000001600380101005000
1127-0100500000000000000000000a0014002c01c800000000000900380101005000
1128-0000000000000000000000000000000000000000000000001300380100010000
1129-0100500000000000000000000000000000000000000000001c00380101005000
1130-f303000000000000000000000000000000000000000000000108390103000000
1116+16004101010050000100500000000000000000000a0014002c01c80000000000
1117+0900410101005000000000000000000000000000000000000000000000000000
1118+1300410100010000010050000000000000000000000000000000000000000000
1119+1c00410101005000f30300000000000000000000000000000000000000000000
1120+0108420103000000ef0300000000000009000000000000000000000000000000
1121+6e6574207469746c650000001600420101005000010050000000000000000000
1122+0a0014002c01c800000000000900420101005000000000000000000000000000
1123+0000000000000000000000001300420100010000010050000000000000000000
1124+0000000000000000000000001c00420101005000f30300000000000000000000
1125+0000000000000000000000000108430103000000ef0300000000000009000000
1126+0000000000000000000000006e6574207469746c650000001600430101005000
1127+0100500000000000000000000a0014002c01c800000000000900430101005000
1128+0000000000000000000000000000000000000000000000001300430100010000
1129+0100500000000000000000000000000000000000000000001c00430101005000
1130+f303000000000000000000000000000000000000000000000108440103000000
11311131 ef03000000000000090000000000000000000000000000006e6574207469746c
1132-6500000016003901010050000100500000000000000000000a0014002c01c800
1133-0000000009003901010050000000000000000000000000000000000000000000
1134-0000000013003901000100000100500000000000000000000000000000000000
1135-000000001c00390101005000f303000000000000000000000000000000000000
1136-0000000001083a0103000000ef03000000000000090000000000000000000000
1137-000000006e6574207469746c6500000016003a01010050000100500000000000
1138-000000000a0014002c01c8000000000009003a01010050000000000000000000
1139-0000000000000000000000000000000013003a01000100000100500000000000
1140-000000000000000000000000000000001c003a0101005000f303000000000000
1141-0000000000000000000000000000000001083b0103000000ef03000000000000
1142-090000000000000000000000000000006e6574207469746c6500000016003b01
1143-010050000100500000000000000000000a0014002c01c8000000000009003b01
1144-0100500000000000000000000000000000000000000000000000000013003b01
1145-000100000100500000000000000000000000000000000000000000001c003b01
1146-01005000f3030000000000000000000000000000000000000000000001083c01
1132+6500000016004401010050000100500000000000000000000a0014002c01c800
1133+0000000009004401010050000000000000000000000000000000000000000000
1134+0000000013004401000100000100500000000000000000000000000000000000
1135+000000001c00440101005000f303000000000000000000000000000000000000
1136+000000000108450103000000ef03000000000000090000000000000000000000
1137+000000006e6574207469746c6500000016004501010050000100500000000000
1138+000000000a0014002c01c8000000000009004501010050000000000000000000
1139+0000000000000000000000000000000013004501000100000100500000000000
1140+000000000000000000000000000000001c00450101005000f303000000000000
1141+000000000000000000000000000000000108460103000000ef03000000000000
1142+090000000000000000000000000000006e6574207469746c6500000016004601
1143+010050000100500000000000000000000a0014002c01c8000000000009004601
1144+0100500000000000000000000000000000000000000000000000000013004601
1145+000100000100500000000000000000000000000000000000000000001c004601
1146+01005000f3030000000000000000000000000000000000000000000001084701
11471147 03000000ef03000000000000090000000000000000000000000000006e657420
1148-7469746c6500000016003c01010050000100500000000000000000000a001400
1149-2c01c8000000000009003c010100500000000000000000000000000000000000
1150-000000000000000013003c010001000001005000000000000000000000000000
1151-00000000000000001c003c0101005000f3030000000000000000000000000000
1152-000000000000000001083d0103000000ef030000000000000900000000000000
1153-00000000000000006e6574207469746c6500000016003d010100500001005000
1154-00000000000000000a0014002c01c8000000000009003d010100500000000000
1155-000000000000000000000000000000000000000013003d010001000001005000
1156-00000000000000000000000000000000000000001c003d0101005000f3030000
1157-000000000000000000000000000000000000000001083e0103000000ef030000
1148+7469746c6500000016004701010050000100500000000000000000000a001400
1149+2c01c80000000000090047010100500000000000000000000000000000000000
1150+0000000000000000130047010001000001005000000000000000000000000000
1151+00000000000000001c00470101005000f3030000000000000000000000000000
1152+00000000000000000108480103000000ef030000000000000900000000000000
1153+00000000000000006e6574207469746c65000000160048010100500001005000
1154+00000000000000000a0014002c01c80000000000090048010100500000000000
1155+0000000000000000000000000000000000000000130048010001000001005000
1156+00000000000000000000000000000000000000001c00480101005000f3030000
1157+00000000000000000000000000000000000000000108490103000000ef030000
11581158 00000000090000000000000000000000000000006e6574207469746c65000000
1159-16003e01010050000100500000000000000000000a0014002c01c80000000000
1160-09003e0101005000000000000000000000000000000000000000000000000000
1161-13003e0100010000010050000000000000000000000000000000000000000000
1162-1c003e0101005000f30300000000000000000000000000000000000000000000
1163-01083f0103000000ef0300000000000009000000000000000000000000000000
1164-6e6574207469746c6500000016003f0101005000010050000000000000000000
1165-0a0014002c01c8000000000009003f0101005000000000000000000000000000
1166-00000000000000000000000013003f0100010000010050000000000000000000
1167-0000000000000000000000001c003f0101005000f30300000000000000000000
1168-0000000000000000000000000108400103000000ef0300000000000009000000
1169-0000000000000000000000006e6574207469746c650000001600400101005000
1170-0100500000000000000000000a0014002c01c800000000000900400101005000
1171-0000000000000000000000000000000000000000000000001300400100010000
1172-0100500000000000000000000000000000000000000000001c00400101005000
1173-f303000000000000000000000000000000000000000000000108410103000000
1159+16004901010050000100500000000000000000000a0014002c01c80000000000
1160+0900490101005000000000000000000000000000000000000000000000000000
1161+1300490100010000010050000000000000000000000000000000000000000000
1162+1c00490101005000f30300000000000000000000000000000000000000000000
1163+01084a0103000000ef0300000000000009000000000000000000000000000000
1164+6e6574207469746c6500000016004a0101005000010050000000000000000000
1165+0a0014002c01c8000000000009004a0101005000000000000000000000000000
1166+00000000000000000000000013004a0100010000010050000000000000000000
1167+0000000000000000000000001c004a0101005000f30300000000000000000000
1168+00000000000000000000000001084b0103000000ef0300000000000009000000
1169+0000000000000000000000006e6574207469746c6500000016004b0101005000
1170+0100500000000000000000000a0014002c01c8000000000009004b0101005000
1171+00000000000000000000000000000000000000000000000013004b0100010000
1172+0100500000000000000000000000000000000000000000001c004b0101005000
1173+f3030000000000000000000000000000000000000000000001084c0103000000
11741174 ef03000000000000090000000000000000000000000000006e6574207469746c
1175-6500000016004101010050000100500000000000000000000a0014002c01c800
1176-0000000009004101010050000000000000000000000000000000000000000000
1177-0000000013004101000100000100500000000000000000000000000000000000
1178-000000001c00410101005000f303000000000000000000000000000000000000
1179-000000000108420103000000ef03000000000000090000000000000000000000
1180-000000006e6574207469746c6500000016004201010050000100500000000000
1181-000000000a0014002c01c8000000000009004201010050000000000000000000
1182-0000000000000000000000000000000013004201000100000100500000000000
1183-000000000000000000000000000000001c00420101005000f303000000000000
1184-000000000000000000000000000000000108430103000000ef03000000000000
1185-090000000000000000000000000000006e6574207469746c6500000016004301
1186-010050000100500000000000000000000a0014002c01c8000000000009004301
1187-0100500000000000000000000000000000000000000000000000000013004301
1188-000100000100500000000000000000000000000000000000000000001c004301
1189-01005000f3030000000000000000000000000000000000000000000001084401
1175+6500000016004c01010050000100500000000000000000000a0014002c01c800
1176+0000000009004c01010050000000000000000000000000000000000000000000
1177+0000000013004c01000100000100500000000000000000000000000000000000
1178+000000001c004c0101005000f303000000000000000000000000000000000000
1179+0000000001084d0103000000ef03000000000000090000000000000000000000
1180+000000006e6574207469746c6500000016004d01010050000100500000000000
1181+000000000a0014002c01c8000000000009004d01010050000000000000000000
1182+0000000000000000000000000000000013004d01000100000100500000000000
1183+000000000000000000000000000000001c004d0101005000f303000000000000
1184+0000000000000000000000000000000001084e0103000000ef03000000000000
1185+090000000000000000000000000000006e6574207469746c6500000016004e01
1186+010050000100500000000000000000000a0014002c01c8000000000009004e01
1187+0100500000000000000000000000000000000000000000000000000013004e01
1188+000100000100500000000000000000000000000000000000000000001c004e01
1189+01005000f3030000000000000000000000000000000000000000000001084f01
11901190 03000000ef03000000000000090000000000000000000000000000006e657420
1191-7469746c6500000016004401010050000100500000000000000000000a001400
1192-2c01c80000000000090044010100500000000000000000000000000000000000
1193-0000000000000000130044010001000001005000000000000000000000000000
1194-00000000000000001c00440101005000f3030000000000000000000000000000
1195-00000000000000000108450103000000ef030000000000000900000000000000
1196-00000000000000006e6574207469746c65000000160045010100500001005000
1197-00000000000000000a0014002c01c80000000000090045010100500000000000
1198-0000000000000000000000000000000000000000130045010001000001005000
1199-00000000000000000000000000000000000000001c00450101005000f3030000
1200-00000000000000000000000000000000000000000108460103000000ef030000
1191+7469746c6500000016004f01010050000100500000000000000000000a001400
1192+2c01c8000000000009004f010100500000000000000000000000000000000000
1193+000000000000000013004f010001000001005000000000000000000000000000
1194+00000000000000001c004f0101005000f3030000000000000000000000000000
1195+00000000000000000108500103000000ef030000000000000900000000000000
1196+00000000000000006e6574207469746c65000000160050010100500001005000
1197+00000000000000000a0014002c01c80000000000090050010100500000000000
1198+0000000000000000000000000000000000000000130050010001000001005000
1199+00000000000000000000000000000000000000001c00500101005000f3030000
1200+00000000000000000000000000000000000000000108510103000000ef030000
12011201 00000000090000000000000000000000000000006e6574207469746c65000000
1202-16004601010050000100500000000000000000000a0014002c01c80000000000
1203-0900460101005000000000000000000000000000000000000000000000000000
1204-1300460100010000010050000000000000000000000000000000000000000000
1205-1c00460101005000f30300000000000000000000000000000000000000000000
1206-0108470103000000ef0300000000000009000000000000000000000000000000
1207-6e6574207469746c650000001600470101005000010050000000000000000000
1208-0a0014002c01c800000000000900470101005000000000000000000000000000
1209-0000000000000000000000001300470100010000010050000000000000000000
1210-0000000000000000000000001c00470101005000f30300000000000000000000
1211-0000000000000000000000000108480103000000ef0300000000000009000000
1212-0000000000000000000000006e6574207469746c650000001600480101005000
1213-0100500000000000000000000a0014002c01c800000000000900480101005000
1214-0000000000000000000000000000000000000000000000001300480100010000
1215-0100500000000000000000000000000000000000000000001c00480101005000
1216-f303000000000000000000000000000000000000000000000108490103000000
1202+16005101010050000100500000000000000000000a0014002c01c80000000000
1203+0900510101005000000000000000000000000000000000000000000000000000
1204+1300510100010000010050000000000000000000000000000000000000000000
1205+1c00510101005000f30300000000000000000000000000000000000000000000
1206+0108520103000000ef0300000000000009000000000000000000000000000000
1207+6e6574207469746c650000001600520101005000010050000000000000000000
1208+0a0014002c01c800000000000900520101005000000000000000000000000000
1209+0000000000000000000000001300520100010000010050000000000000000000
1210+0000000000000000000000001c00520101005000f30300000000000000000000
1211+0000000000000000000000000108530103000000ef0300000000000009000000
1212+0000000000000000000000006e6574207469746c650000001600530101005000
1213+0100500000000000000000000a0014002c01c800000000000900530101005000
1214+0000000000000000000000000000000000000000000000001300530100010000
1215+0100500000000000000000000000000000000000000000001c00530101005000
1216+f303000000000000000000000000000000000000000000000108540103000000
12171217 ef03000000000000090000000000000000000000000000006e6574207469746c
1218-6500000016004901010050000100500000000000000000000a0014002c01c800
1219-0000000009004901010050000000000000000000000000000000000000000000
1220-0000000013004901000100000100500000000000000000000000000000000000
1221-000000001c00490101005000f303000000000000000000000000000000000000
1222-0000000001084a0103000000ef03000000000000090000000000000000000000
1223-000000006e6574207469746c6500000016004a01010050000100500000000000
1224-000000000a0014002c01c8000000000009004a01010050000000000000000000
1225-0000000000000000000000000000000013004a01000100000100500000000000
1226-000000000000000000000000000000001c004a0101005000f303000000000000
1227-0000000000000000000000000000000001084b0103000000ef03000000000000
1228-090000000000000000000000000000006e6574207469746c6500000016004b01
1229-010050000100500000000000000000000a0014002c01c8000000000009004b01
1230-0100500000000000000000000000000000000000000000000000000013004b01
1231-000100000100500000000000000000000000000000000000000000001c004b01
1232-01005000f3030000000000000000000000000000000000000000000001084c01
1218+6500000016005401010050000100500000000000000000000a0014002c01c800
1219+0000000009005401010050000000000000000000000000000000000000000000
1220+0000000013005401000100000100500000000000000000000000000000000000
1221+000000001c00540101005000f303000000000000000000000000000000000000
1222+000000000108550103000000ef03000000000000090000000000000000000000
1223+000000006e6574207469746c6500000016005501010050000100500000000000
1224+000000000a0014002c01c8000000000009005501010050000000000000000000
1225+0000000000000000000000000000000013005501000100000100500000000000
1226+000000000000000000000000000000001c00550101005000f303000000000000
1227+000000000000000000000000000000000108560103000000ef03000000000000
1228+090000000000000000000000000000006e6574207469746c6500000016005601
1229+010050000100500000000000000000000a0014002c01c8000000000009005601
1230+0100500000000000000000000000000000000000000000000000000013005601
1231+000100000100500000000000000000000000000000000000000000001c005601
1232+01005000f3030000000000000000000000000000000000000000000001085701
12331233 03000000ef03000000000000090000000000000000000000000000006e657420
1234-7469746c6500000016004c01010050000100500000000000000000000a001400
1235-2c01c8000000000009004c010100500000000000000000000000000000000000
1236-000000000000000013004c010001000001005000000000000000000000000000
1237-00000000000000001c004c0101005000f3030000000000000000000000000000
1238-000000000000000001084d0103000000ef030000000000000900000000000000
1239-00000000000000006e6574207469746c6500000016004d010100500001005000
1240-00000000000000000a0014002c01c8000000000009004d010100500000000000
1241-000000000000000000000000000000000000000013004d010001000001005000
1242-00000000000000000000000000000000000000001c004d0101005000f3030000
1243-000000000000000000000000000000000000000001084e0103000000ef030000
1234+7469746c6500000016005701010050000100500000000000000000000a001400
1235+2c01c80000000000090057010100500000000000000000000000000000000000
1236+0000000000000000130057010001000001005000000000000000000000000000
1237+00000000000000001c00570101005000f3030000000000000000000000000000
1238+00000000000000000108580103000000ef030000000000000900000000000000
1239+00000000000000006e6574207469746c65000000160058010100500001005000
1240+00000000000000000a0014002c01c80000000000090058010100500000000000
1241+0000000000000000000000000000000000000000130058010001000001005000
1242+00000000000000000000000000000000000000001c00580101005000f3030000
1243+00000000000000000000000000000000000000000108590103000000ef030000
12441244 00000000090000000000000000000000000000006e6574207469746c65000000
1245-16004e01010050000100500000000000000000000a0014002c01c80000000000
1246-09004e0101005000000000000000000000000000000000000000000000000000
1247-13004e0100010000010050000000000000000000000000000000000000000000
1248-1c004e0101005000f30300000000000000000000000000000000000000000000
1249-01084f0103000000ef0300000000000009000000000000000000000000000000
1250-6e6574207469746c6500000016004f0101005000010050000000000000000000
1251-0a0014002c01c8000000000009004f0101005000000000000000000000000000
1252-00000000000000000000000013004f0100010000010050000000000000000000
1253-0000000000000000000000001c004f0101005000f30300000000000000000000
1254-0000000000000000000000000108500103000000ef0300000000000009000000
1255-0000000000000000000000006e6574207469746c650000001600500101005000
1256-0100500000000000000000000a0014002c01c800000000000900500101005000
1257-0000000000000000000000000000000000000000000000001300500100010000
1258-0100500000000000000000000000000000000000000000001c00500101005000
1259-f303000000000000000000000000000000000000000000000108510103000000
1245+16005901010050000100500000000000000000000a0014002c01c80000000000
1246+0900590101005000000000000000000000000000000000000000000000000000
1247+1300590100010000010050000000000000000000000000000000000000000000
1248+1c00590101005000f30300000000000000000000000000000000000000000000
1249+01085a0103000000ef0300000000000009000000000000000000000000000000
1250+6e6574207469746c6500000016005a0101005000010050000000000000000000
1251+0a0014002c01c8000000000009005a0101005000000000000000000000000000
1252+00000000000000000000000013005a0100010000010050000000000000000000
1253+0000000000000000000000001c005a0101005000f30300000000000000000000
1254+00000000000000000000000001085b0103000000ef0300000000000009000000
1255+0000000000000000000000006e6574207469746c6500000016005b0101005000
1256+0100500000000000000000000a0014002c01c8000000000009005b0101005000
1257+00000000000000000000000000000000000000000000000013005b0100010000
1258+0100500000000000000000000000000000000000000000001c005b0101005000
1259+f3030000000000000000000000000000000000000000000001085c0103000000
12601260 ef03000000000000090000000000000000000000000000006e6574207469746c
1261-6500000016005101010050000100500000000000000000000a0014002c01c800
1262-0000000009005101010050000000000000000000000000000000000000000000
1263-0000000013005101000100000100500000000000000000000000000000000000
1264-000000001c00510101005000f303000000000000000000000000000000000000
1265-000000000108520103000000ef03000000000000090000000000000000000000
1266-000000006e6574207469746c6500000016005201010050000100500000000000
1267-000000000a0014002c01c8000000000009005201010050000000000000000000
1268-0000000000000000000000000000000013005201000100000100500000000000
1269-000000000000000000000000000000001c00520101005000f303000000000000
1270-000000000000000000000000000000000108530103000000ef03000000000000
1271-090000000000000000000000000000006e6574207469746c6500000016005301
1272-010050000100500000000000000000000a0014002c01c8000000000009005301
1273-0100500000000000000000000000000000000000000000000000000013005301
1274-000100000100500000000000000000000000000000000000000000001c005301
1275-01005000f3030000000000000000000000000000000000000000000001085401
1261+6500000016005c01010050000100500000000000000000000a0014002c01c800
1262+0000000009005c01010050000000000000000000000000000000000000000000
1263+0000000013005c01000100000100500000000000000000000000000000000000
1264+000000001c005c0101005000f303000000000000000000000000000000000000
1265+0000000001085d0103000000ef03000000000000090000000000000000000000
1266+000000006e6574207469746c6500000016005d01010050000100500000000000
1267+000000000a0014002c01c8000000000009005d01010050000000000000000000
1268+0000000000000000000000000000000013005d01000100000100500000000000
1269+000000000000000000000000000000001c005d0101005000f303000000000000
1270+0000000000000000000000000000000001085e0103000000ef03000000000000
1271+090000000000000000000000000000006e6574207469746c6500000016005e01
1272+010050000100500000000000000000000a0014002c01c8000000000009005e01
1273+0100500000000000000000000000000000000000000000000000000013005e01
1274+000100000100500000000000000000000000000000000000000000001c005e01
1275+01005000f3030000000000000000000000000000000000000000000001085f01
12761276 03000000ef03000000000000090000000000000000000000000000006e657420
1277-7469746c6500000016005401010050000100500000000000000000000a001400
1278-2c01c80000000000090054010100500000000000000000000000000000000000
1279-0000000000000000130054010001000001005000000000000000000000000000
1280-00000000000000001c00540101005000f3030000000000000000000000000000
1281-00000000000000000108550103000000ef030000000000000900000000000000
1282-00000000000000006e6574207469746c65000000160055010100500001005000
1283-00000000000000000a0014002c01c80000000000090055010100500000000000
1284-0000000000000000000000000000000000000000130055010001000001005000
1285-00000000000000000000000000000000000000001c00550101005000f3030000
1286-00000000000000000000000000000000000000000108560103000000ef030000
1277+7469746c6500000016005f01010050000100500000000000000000000a001400
1278+2c01c8000000000009005f010100500000000000000000000000000000000000
1279+000000000000000013005f010001000001005000000000000000000000000000
1280+00000000000000001c005f0101005000f3030000000000000000000000000000
1281+00000000000000000108600103000000ef030000000000000900000000000000
1282+00000000000000006e6574207469746c65000000160060010100500001005000
1283+00000000000000000a0014002c01c80000000000090060010100500000000000
1284+0000000000000000000000000000000000000000130060010001000001005000
1285+00000000000000000000000000000000000000001c00600101005000f3030000
1286+00000000000000000000000000000000000000000108610103000000ef030000
12871287 00000000090000000000000000000000000000006e6574207469746c65000000
1288-16005601010050000100500000000000000000000a0014002c01c80000000000
1289-0900560101005000000000000000000000000000000000000000000000000000
1290-1300560100010000010050000000000000000000000000000000000000000000
1291-1c00560101005000f30300000000000000000000000000000000000000000000
1292-0108570103000000ef0300000000000009000000000000000000000000000000
1293-6e6574207469746c650000001600570101005000010050000000000000000000
1294-0a0014002c01c800000000000900570101005000000000000000000000000000
1295-0000000000000000000000001300570100010000010050000000000000000000
1296-0000000000000000000000001c00570101005000f30300000000000000000000
1297-0000000000000000000000000108580103000000ef0300000000000009000000
1298-0000000000000000000000006e6574207469746c650000001600580101005000
1299-0100500000000000000000000a0014002c01c800000000000900580101005000
1300-0000000000000000000000000000000000000000000000001300580100010000
1301-0100500000000000000000000000000000000000000000001c00580101005000
1302-f303000000000000000000000000000000000000000000000108590103000000
1288+16006101010050000100500000000000000000000a0014002c01c80000000000
1289+0900610101005000000000000000000000000000000000000000000000000000
1290+1300610100010000010050000000000000000000000000000000000000000000
1291+1c00610101005000f30300000000000000000000000000000000000000000000
1292+0108620103000000ef0300000000000009000000000000000000000000000000
1293+6e6574207469746c650000001600620101005000010050000000000000000000
1294+0a0014002c01c800000000000900620101005000000000000000000000000000
1295+0000000000000000000000001300620100010000010050000000000000000000
1296+0000000000000000000000001c00620101005000f30300000000000000000000
1297+0000000000000000000000000108630103000000ef0300000000000009000000
1298+0000000000000000000000006e6574207469746c650000001600630101005000
1299+0100500000000000000000000a0014002c01c800000000000900630101005000
1300+0000000000000000000000000000000000000000000000001300630100010000
1301+0100500000000000000000000000000000000000000000001c00630101005000
1302+f303000000000000000000000000000000000000000000000108640103000000
13031303 ef03000000000000090000000000000000000000000000006e6574207469746c
1304-6500000016005901010050000100500000000000000000000a0014002c01c800
1305-0000000009005901010050000000000000000000000000000000000000000000
1306-0000000013005901000100000100500000000000000000000000000000000000
1307-000000001c00590101005000f303000000000000000000000000000000000000
1308-0000000001085a0103000000ef03000000000000090000000000000000000000
1309-000000006e6574207469746c6500000016005a01010050000100500000000000
1310-000000000a0014002c01c8000000000009005a01010050000000000000000000
1311-0000000000000000000000000000000013005a01000100000100500000000000
1312-000000000000000000000000000000001c005a0101005000f303000000000000
1313-0000000000000000000000000000000001085b0103000000ef03000000000000
1314-090000000000000000000000000000006e6574207469746c6500000016005b01
1315-010050000100500000000000000000000a0014002c01c8000000000009005b01
1316-0100500000000000000000000000000000000000000000000000000013005b01
1317-000100000100500000000000000000000000000000000000000000001c005b01
1318-01005000f3030000000000000000000000000000000000000000000001085c01
1304+6500000016006401010050000100500000000000000000000a0014002c01c800
1305+0000000009006401010050000000000000000000000000000000000000000000
1306+0000000013006401000100000100500000000000000000000000000000000000
1307+000000001c00640101005000f303000000000000000000000000000000000000
1308+000000000108650103000000ef03000000000000090000000000000000000000
1309+000000006e6574207469746c6500000016006501010050000100500000000000
1310+000000000a0014002c01c8000000000009006501010050000000000000000000
1311+0000000000000000000000000000000013006501000100000100500000000000
1312+000000000000000000000000000000001c00650101005000f303000000000000
1313+000000000000000000000000000000000108660103000000ef03000000000000
1314+090000000000000000000000000000006e6574207469746c6500000016006601
1315+010050000100500000000000000000000a0014002c01c8000000000009006601
1316+0100500000000000000000000000000000000000000000000000000013006601
1317+000100000100500000000000000000000000000000000000000000001c006601
1318+01005000f3030000000000000000000000000000000000000000000001086701
13191319 03000000ef03000000000000090000000000000000000000000000006e657420
1320-7469746c6500000016005c01010050000100500000000000000000000a001400
1321-2c01c8000000000009005c010100500000000000000000000000000000000000
1322-000000000000000013005c010001000001005000000000000000000000000000
1323-00000000000000001c005c0101005000f3030000000000000000000000000000
1324-000000000000000001085d0103000000ef030000000000000900000000000000
1325-00000000000000006e6574207469746c6500000016005d010100500001005000
1326-00000000000000000a0014002c01c8000000000009005d010100500000000000
1327-000000000000000000000000000000000000000013005d010001000001005000
1328-00000000000000000000000000000000000000001c005d0101005000f3030000
1329-000000000000000000000000000000000000000001085e0103000000ef030000
1320+7469746c6500000016006701010050000100500000000000000000000a001400
1321+2c01c80000000000090067010100500000000000000000000000000000000000
1322+0000000000000000130067010001000001005000000000000000000000000000
1323+00000000000000001c00670101005000f3030000000000000000000000000000
1324+00000000000000000108680103000000ef030000000000000900000000000000
1325+00000000000000006e6574207469746c65000000160068010100500001005000
1326+00000000000000000a0014002c01c80000000000090068010100500000000000
1327+0000000000000000000000000000000000000000130068010001000001005000
1328+00000000000000000000000000000000000000001c00680101005000f3030000
1329+00000000000000000000000000000000000000000108690103000000ef030000
13301330 00000000090000000000000000000000000000006e6574207469746c65000000
1331-16005e01010050000100500000000000000000000a0014002c01c80000000000
1332-09005e0101005000000000000000000000000000000000000000000000000000
1333-13005e0100010000010050000000000000000000000000000000000000000000
1334-1c005e0101005000f30300000000000000000000000000000000000000000000
1335-01085f0103000000ef0300000000000009000000000000000000000000000000
1336-6e6574207469746c6500000016005f0101005000010050000000000000000000
1337-0a0014002c01c8000000000009005f0101005000000000000000000000000000
1338-00000000000000000000000013005f0100010000010050000000000000000000
1339-0000000000000000000000001c005f0101005000f30300000000000000000000
1340-0000000000000000000000000108600103000000ef0300000000000009000000
1341-0000000000000000000000006e6574207469746c650000001600600101005000
1342-0100500000000000000000000a0014002c01c800000000000900600101005000
1343-0000000000000000000000000000000000000000000000001300600100010000
1344-0100500000000000000000000000000000000000000000001c00600101005000
1345-f303000000000000000000000000000000000000000000000108610103000000
1331+16006901010050000100500000000000000000000a0014002c01c80000000000
1332+0900690101005000000000000000000000000000000000000000000000000000
1333+1300690100010000010050000000000000000000000000000000000000000000
1334+1c00690101005000f30300000000000000000000000000000000000000000000
1335+01086a0103000000ef0300000000000009000000000000000000000000000000
1336+6e6574207469746c6500000016006a0101005000010050000000000000000000
1337+0a0014002c01c8000000000009006a0101005000000000000000000000000000
1338+00000000000000000000000013006a0100010000010050000000000000000000
1339+0000000000000000000000001c006a0101005000f30300000000000000000000
1340+00000000000000000000000001086b0103000000ef0300000000000009000000
1341+0000000000000000000000006e6574207469746c6500000016006b0101005000
1342+0100500000000000000000000a0014002c01c8000000000009006b0101005000
1343+00000000000000000000000000000000000000000000000013006b0100010000
1344+0100500000000000000000000000000000000000000000001c006b0101005000
1345+f3030000000000000000000000000000000000000000000001086c0103000000
13461346 ef03000000000000090000000000000000000000000000006e6574207469746c
1347-6500000016006101010050000100500000000000000000000a0014002c01c800
1348-0000000009006101010050000000000000000000000000000000000000000000
1349-0000000013006101000100000100500000000000000000000000000000000000
1350-000000001c00610101005000f303000000000000000000000000000000000000
1351-000000000108620103000000ef03000000000000090000000000000000000000
1352-000000006e6574207469746c6500000016006201010050000100500000000000
1353-000000000a0014002c01c8000000000009006201010050000000000000000000
1354-0000000000000000000000000000000013006201000100000100500000000000
1355-000000000000000000000000000000001c00620101005000f303000000000000
1356-000000000000000000000000000000000108630103000000ef03000000000000
1357-090000000000000000000000000000006e6574207469746c6500000016006301
1358-010050000100500000000000000000000a0014002c01c8000000000009006301
1359-0100500000000000000000000000000000000000000000000000000013006301
1360-000100000100500000000000000000000000000000000000000000001c006301
1361-01005000f3030000000000000000000000000000000000000000000001086401
1347+6500000016006c01010050000100500000000000000000000a0014002c01c800
1348+0000000009006c01010050000000000000000000000000000000000000000000
1349+0000000013006c01000100000100500000000000000000000000000000000000
1350+000000001c006c0101005000f303000000000000000000000000000000000000
1351+0000000001086d0103000000ef03000000000000090000000000000000000000
1352+000000006e6574207469746c6500000016006d01010050000100500000000000
1353+000000000a0014002c01c8000000000009006d01010050000000000000000000
1354+0000000000000000000000000000000013006d01000100000100500000000000
1355+000000000000000000000000000000001c006d0101005000f303000000000000
1356+0000000000000000000000000000000001086e0103000000ef03000000000000
1357+090000000000000000000000000000006e6574207469746c6500000016006e01
1358+010050000100500000000000000000000a0014002c01c8000000000009006e01
1359+0100500000000000000000000000000000000000000000000000000013006e01
1360+000100000100500000000000000000000000000000000000000000001c006e01
1361+01005000f3030000000000000000000000000000000000000000000001086f01
13621362 03000000ef03000000000000090000000000000000000000000000006e657420
1363-7469746c6500000016006401010050000100500000000000000000000a001400
1364-2c01c80000000000090064010100500000000000000000000000000000000000
1365-0000000000000000130064010001000001005000000000000000000000000000
1366-00000000000000001c00640101005000f3030000000000000000000000000000
1367-00000000000000000108650103000000ef030000000000000900000000000000
1368-00000000000000006e6574207469746c65000000160065010100500001005000
1369-00000000000000000a0014002c01c80000000000090065010100500000000000
1370-0000000000000000000000000000000000000000130065010001000001005000
1371-00000000000000000000000000000000000000001c00650101005000f3030000
1372-00000000000000000000000000000000000000000108660103000000ef030000
1363+7469746c6500000016006f01010050000100500000000000000000000a001400
1364+2c01c8000000000009006f010100500000000000000000000000000000000000
1365+000000000000000013006f010001000001005000000000000000000000000000
1366+00000000000000001c006f0101005000f3030000000000000000000000000000
1367+00000000000000000108700103000000ef030000000000000900000000000000
1368+00000000000000006e6574207469746c65000000160070010100500001005000
1369+00000000000000000a0014002c01c80000000000090070010100500000000000
1370+0000000000000000000000000000000000000000130070010001000001005000
1371+00000000000000000000000000000000000000001c00700101005000f3030000
1372+00000000000000000000000000000000000000000108710103000000ef030000
13731373 00000000090000000000000000000000000000006e6574207469746c65000000
1374-16006601010050000100500000000000000000000a0014002c01c80000000000
1375-0900660101005000000000000000000000000000000000000000000000000000
1376-1300660100010000010050000000000000000000000000000000000000000000
1377-1c00660101005000f30300000000000000000000000000000000000000000000
1378-0108670103000000ef0300000000000009000000000000000000000000000000
1379-6e6574207469746c650000001600670101005000010050000000000000000000
1380-0a0014002c01c800000000000900670101005000000000000000000000000000
1381-0000000000000000000000001300670100010000010050000000000000000000
1382-0000000000000000000000001c00670101005000f30300000000000000000000
1383-0000000000000000000000000108680103000000ef0300000000000009000000
1384-0000000000000000000000006e6574207469746c650000001600680101005000
1385-0100500000000000000000000a0014002c01c800000000000900680101005000
1386-0000000000000000000000000000000000000000000000001300680100010000
1387-0100500000000000000000000000000000000000000000001c00680101005000
1388-f303000000000000000000000000000000000000000000000108690103000000
1374+16007101010050000100500000000000000000000a0014002c01c80000000000
1375+0900710101005000000000000000000000000000000000000000000000000000
1376+1300710100010000010050000000000000000000000000000000000000000000
1377+1c00710101005000f30300000000000000000000000000000000000000000000
1378+0108720103000000ef0300000000000009000000000000000000000000000000
1379+6e6574207469746c650000001600720101005000010050000000000000000000
1380+0a0014002c01c800000000000900720101005000000000000000000000000000
1381+0000000000000000000000001300720100010000010050000000000000000000
1382+0000000000000000000000001c00720101005000f30300000000000000000000
1383+0000000000000000000000000108730103000000ef0300000000000009000000
1384+0000000000000000000000006e6574207469746c650000001600730101005000
1385+0100500000000000000000000a0014002c01c800000000000900730101005000
1386+0000000000000000000000000000000000000000000000001300730100010000
1387+0100500000000000000000000000000000000000000000001c00730101005000
1388+f303000000000000000000000000000000000000000000000108740103000000
13891389 ef03000000000000090000000000000000000000000000006e6574207469746c
1390-6500000016006901010050000100500000000000000000000a0014002c01c800
1391-0000000009006901010050000000000000000000000000000000000000000000
1392-0000000013006901000100000100500000000000000000000000000000000000
1393-000000001c00690101005000f303000000000000000000000000000000000000
1394-0000000001086a0103000000ef03000000000000090000000000000000000000
1395-000000006e6574207469746c6500000016006a01010050000100500000000000
1396-000000000a0014002c01c8000000000009006a01010050000000000000000000
1397-0000000000000000000000000000000013006a01000100000100500000000000
1398-000000000000000000000000000000001c006a0101005000f303000000000000
1399-0000000000000000000000000000000001086b0103000000ef03000000000000
1400-090000000000000000000000000000006e6574207469746c6500000016006b01
1401-010050000100500000000000000000000a0014002c01c8000000000009006b01
1402-0100500000000000000000000000000000000000000000000000000013006b01
1403-000100000100500000000000000000000000000000000000000000001c006b01
1404-01005000f3030000000000000000000000000000000000000000000001086c01
1390+6500000016007401010050000100500000000000000000000a0014002c01c800
1391+0000000009007401010050000000000000000000000000000000000000000000
1392+0000000013007401000100000100500000000000000000000000000000000000
1393+000000001c00740101005000f303000000000000000000000000000000000000
1394+000000000108750103000000ef03000000000000090000000000000000000000
1395+000000006e6574207469746c6500000016007501010050000100500000000000
1396+000000000a0014002c01c8000000000009007501010050000000000000000000
1397+0000000000000000000000000000000013007501000100000100500000000000
1398+000000000000000000000000000000001c00750101005000f303000000000000
1399+000000000000000000000000000000000108760103000000ef03000000000000
1400+090000000000000000000000000000006e6574207469746c6500000016007601
1401+010050000100500000000000000000000a0014002c01c8000000000009007601
1402+0100500000000000000000000000000000000000000000000000000013007601
1403+000100000100500000000000000000000000000000000000000000001c007601
1404+01005000f3030000000000000000000000000000000000000000000001087701
14051405 03000000ef03000000000000090000000000000000000000000000006e657420
1406-7469746c6500000016006c01010050000100500000000000000000000a001400
1407-2c01c8000000000009006c010100500000000000000000000000000000000000
1408-000000000000000013006c010001000001005000000000000000000000000000
1409-00000000000000001c006c0101005000f3030000000000000000000000000000
1410-000000000000000001086d0103000000ef030000000000000900000000000000
1411-00000000000000006e6574207469746c6500000016006d010100500001005000
1412-00000000000000000a0014002c01c8000000000009006d010100500000000000
1413-000000000000000000000000000000000000000013006d010001000001005000
1414-00000000000000000000000000000000000000001c006d0101005000f3030000
1415-000000000000000000000000000000000000000001086e0103000000ef030000
1406+7469746c6500000016007701010050000100500000000000000000000a001400
1407+2c01c80000000000090077010100500000000000000000000000000000000000
1408+0000000000000000130077010001000001005000000000000000000000000000
1409+00000000000000001c00770101005000f3030000000000000000000000000000
1410+00000000000000000108780103000000ef030000000000000900000000000000
1411+00000000000000006e6574207469746c65000000160078010100500001005000
1412+00000000000000000a0014002c01c80000000000090078010100500000000000
1413+0000000000000000000000000000000000000000130078010001000001005000
1414+00000000000000000000000000000000000000001c00780101005000f3030000
1415+00000000000000000000000000000000000000000108790103000000ef030000
14161416 00000000090000000000000000000000000000006e6574207469746c65000000
1417-16006e01010050000100500000000000000000000a0014002c01c80000000000
1418-09006e0101005000000000000000000000000000000000000000000000000000
1419-13006e0100010000010050000000000000000000000000000000000000000000
1420-1c006e0101005000f30300000000000000000000000000000000000000000000
1421-01086f0103000000ef0300000000000009000000000000000000000000000000
1422-6e6574207469746c6500000016006f0101005000010050000000000000000000
1423-0a0014002c01c8000000000009006f0101005000000000000000000000000000
1424-00000000000000000000000013006f0100010000010050000000000000000000
1425-0000000000000000000000001c006f0101005000f30300000000000000000000
1426-0000000000000000000000000108700103000000ef0300000000000009000000
1427-0000000000000000000000006e6574207469746c650000001600700101005000
1428-0100500000000000000000000a0014002c01c800000000000900700101005000
1429-0000000000000000000000000000000000000000000000001300700100010000
1430-0100500000000000000000000000000000000000000000001c00700101005000
1431-f303000000000000000000000000000000000000000000000108710103000000
1417+16007901010050000100500000000000000000000a0014002c01c80000000000
1418+0900790101005000000000000000000000000000000000000000000000000000
1419+1300790100010000010050000000000000000000000000000000000000000000
1420+1c00790101005000f30300000000000000000000000000000000000000000000
1421+01087a0103000000ef0300000000000009000000000000000000000000000000
1422+6e6574207469746c6500000016007a0101005000010050000000000000000000
1423+0a0014002c01c8000000000009007a0101005000000000000000000000000000
1424+00000000000000000000000013007a0100010000010050000000000000000000
1425+0000000000000000000000001c007a0101005000f30300000000000000000000
1426+00000000000000000000000001087b0103000000ef0300000000000009000000
1427+0000000000000000000000006e6574207469746c6500000016007b0101005000
1428+0100500000000000000000000a0014002c01c8000000000009007b0101005000
1429+00000000000000000000000000000000000000000000000013007b0100010000
1430+0100500000000000000000000000000000000000000000001c007b0101005000
1431+f3030000000000000000000000000000000000000000000001087c0103000000
14321432 ef03000000000000090000000000000000000000000000006e6574207469746c
1433-6500000016007101010050000100500000000000000000000a0014002c01c800
1434-0000000009007101010050000000000000000000000000000000000000000000
1435-0000000013007101000100000100500000000000000000000000000000000000
1436-000000001c00710101005000f303000000000000000000000000000000000000
1437-000000000108720103000000ef03000000000000090000000000000000000000
1438-000000006e6574207469746c6500000016007201010050000100500000000000
1439-000000000a0014002c01c8000000000009007201010050000000000000000000
1440-0000000000000000000000000000000013007201000100000100500000000000
1441-000000000000000000000000000000001c00720101005000f303000000000000
1442-000000000000000000000000000000000108730103000000ef03000000000000
1443-090000000000000000000000000000006e6574207469746c6500000016007301
1444-010050000100500000000000000000000a0014002c01c8000000000009007301
1445-0100500000000000000000000000000000000000000000000000000013007301
1446-000100000100500000000000000000000000000000000000000000001c007301
1447-01005000f3030000000000000000000000000000000000000000000001087401
1433+6500000016007c01010050000100500000000000000000000a0014002c01c800
1434+0000000009007c01010050000000000000000000000000000000000000000000
1435+0000000013007c01000100000100500000000000000000000000000000000000
1436+000000001c007c0101005000f303000000000000000000000000000000000000
1437+0000000001087d0103000000ef03000000000000090000000000000000000000
1438+000000006e6574207469746c6500000016007d01010050000100500000000000
1439+000000000a0014002c01c8000000000009007d01010050000000000000000000
1440+0000000000000000000000000000000013007d01000100000100500000000000
1441+000000000000000000000000000000001c007d0101005000f303000000000000
1442+0000000000000000000000000000000001087e0103000000ef03000000000000
1443+090000000000000000000000000000006e6574207469746c6500000016007e01
1444+010050000100500000000000000000000a0014002c01c8000000000009007e01
1445+0100500000000000000000000000000000000000000000000000000013007e01
1446+000100000100500000000000000000000000000000000000000000001c007e01
1447+01005000f3030000000000000000000000000000000000000000000001087f01
14481448 03000000ef03000000000000090000000000000000000000000000006e657420
1449-7469746c6500000016007401010050000100500000000000000000000a001400
1450-2c01c80000000000090074010100500000000000000000000000000000000000
1451-0000000000000000130074010001000001005000000000000000000000000000
1452-00000000000000001c00740101005000f3030000000000000000000000000000
1453-00000000000000000108750103000000ef030000000000000900000000000000
1454-00000000000000006e6574207469746c65000000160075010100500001005000
1455-00000000000000000a0014002c01c80000000000090075010100500000000000
1456-0000000000000000000000000000000000000000130075010001000001005000
1457-00000000000000000000000000000000000000001c00750101005000f3030000
1458-00000000000000000000000000000000000000000108760103000000ef030000
1449+7469746c6500000016007f01010050000100500000000000000000000a001400
1450+2c01c8000000000009007f010100500000000000000000000000000000000000
1451+000000000000000013007f010001000001005000000000000000000000000000
1452+00000000000000001c007f0101005000f3030000000000000000000000000000
1453+00000000000000000108800103000000ef030000000000000900000000000000
1454+00000000000000006e6574207469746c65000000160080010100500001005000
1455+00000000000000000a0014002c01c80000000000090080010100500000000000
1456+0000000000000000000000000000000000000000130080010001000001005000
1457+00000000000000000000000000000000000000001c00800101005000f3030000
1458+00000000000000000000000000000000000000000108810103000000ef030000
14591459 00000000090000000000000000000000000000006e6574207469746c65000000
1460-16007601010050000100500000000000000000000a0014002c01c80000000000
1461-0900760101005000000000000000000000000000000000000000000000000000
1462-1300760100010000010050000000000000000000000000000000000000000000
1463-1c00760101005000f30300000000000000000000000000000000000000000000
1464-0108770103000000ef0300000000000009000000000000000000000000000000
1465-6e6574207469746c650000001600770101005000010050000000000000000000
1466-0a0014002c01c800000000000900770101005000000000000000000000000000
1467-0000000000000000000000001300770100010000010050000000000000000000
1468-0000000000000000000000001c00770101005000f30300000000000000000000
1469-0000000000000000000000000108780103000000ef0300000000000009000000
1470-0000000000000000000000006e6574207469746c650000001600780101005000
1471-0100500000000000000000000a0014002c01c800000000000900780101005000
1472-0000000000000000000000000000000000000000000000001300780100010000
1473-0100500000000000000000000000000000000000000000001c00780101005000
1474-f303000000000000000000000000000000000000000000000108790103000000
1460+16008101010050000100500000000000000000000a0014002c01c80000000000
1461+0900810101005000000000000000000000000000000000000000000000000000
1462+1300810100010000010050000000000000000000000000000000000000000000
1463+1c00810101005000f30300000000000000000000000000000000000000000000
1464+0108820103000000ef0300000000000009000000000000000000000000000000
1465+6e6574207469746c650000001600820101005000010050000000000000000000
1466+0a0014002c01c800000000000900820101005000000000000000000000000000
1467+0000000000000000000000001300820100010000010050000000000000000000
1468+0000000000000000000000001c00820101005000f30300000000000000000000
1469+0000000000000000000000000108830103000000ef0300000000000009000000
1470+0000000000000000000000006e6574207469746c650000001600830101005000
1471+0100500000000000000000000a0014002c01c800000000000900830101005000
1472+0000000000000000000000000000000000000000000000001300830100010000
1473+0100500000000000000000000000000000000000000000001c00830101005000
1474+f303000000000000000000000000000000000000000000000108840103000000
14751475 ef03000000000000090000000000000000000000000000006e6574207469746c
1476-6500000016007901010050000100500000000000000000000a0014002c01c800
1477-0000000009007901010050000000000000000000000000000000000000000000
1478-0000000013007901000100000100500000000000000000000000000000000000
1479-000000001c00790101005000f303000000000000000000000000000000000000
1480-0000000001087a0103000000ef03000000000000090000000000000000000000
1481-000000006e6574207469746c6500000016007a01010050000100500000000000
1482-000000000a0014002c01c8000000000009007a01010050000000000000000000
1483-0000000000000000000000000000000013007a01000100000100500000000000
1484-000000000000000000000000000000001c007a0101005000f303000000000000
1485-0000000000000000000000000000000001087b0103000000ef03000000000000
1486-090000000000000000000000000000006e6574207469746c6500000016007b01
1487-010050000100500000000000000000000a0014002c01c8000000000009007b01
1488-0100500000000000000000000000000000000000000000000000000013007b01
1489-000100000100500000000000000000000000000000000000000000001c007b01
1490-01005000f3030000000000000000000000000000000000000000000001087c01
1476+6500000016008401010050000100500000000000000000000a0014002c01c800
1477+0000000009008401010050000000000000000000000000000000000000000000
1478+0000000013008401000100000100500000000000000000000000000000000000
1479+000000001c00840101005000f303000000000000000000000000000000000000
1480+000000000108850103000000ef03000000000000090000000000000000000000
1481+000000006e6574207469746c6500000016008501010050000100500000000000
1482+000000000a0014002c01c8000000000009008501010050000000000000000000
1483+0000000000000000000000000000000013008501000100000100500000000000
1484+000000000000000000000000000000001c00850101005000f303000000000000
1485+000000000000000000000000000000000108860103000000ef03000000000000
1486+090000000000000000000000000000006e6574207469746c6500000016008601
1487+010050000100500000000000000000000a0014002c01c8000000000009008601
1488+0100500000000000000000000000000000000000000000000000000013008601
1489+000100000100500000000000000000000000000000000000000000001c008601
1490+01005000f3030000000000000000000000000000000000000000000001088701
14911491 03000000ef03000000000000090000000000000000000000000000006e657420
1492-7469746c6500000016007c01010050000100500000000000000000000a001400
1493-2c01c8000000000009007c010100500000000000000000000000000000000000
1494-000000000000000013007c010001000001005000000000000000000000000000
1495-00000000000000001c007c0101005000f3030000000000000000000000000000
1496-000000000000000001087d0103000000ef030000000000000900000000000000
1497-00000000000000006e6574207469746c6500000016007d010100500001005000
1498-00000000000000000a0014002c01c8000000000009007d010100500000000000
1499-000000000000000000000000000000000000000013007d010001000001005000
1500-00000000000000000000000000000000000000001c007d0101005000f3030000
1501-000000000000000000000000000000000000000001087e0103000000ef030000
1492+7469746c6500000016008701010050000100500000000000000000000a001400
1493+2c01c80000000000090087010100500000000000000000000000000000000000
1494+0000000000000000130087010001000001005000000000000000000000000000
1495+00000000000000001c00870101005000f3030000000000000000000000000000
1496+00000000000000000108880103000000ef030000000000000900000000000000
1497+00000000000000006e6574207469746c65000000160088010100500001005000
1498+00000000000000000a0014002c01c80000000000090088010100500000000000
1499+0000000000000000000000000000000000000000130088010001000001005000
1500+00000000000000000000000000000000000000001c00880101005000f3030000
1501+00000000000000000000000000000000000000000108890103000000ef030000
15021502 00000000090000000000000000000000000000006e6574207469746c65000000
1503-16007e01010050000100500000000000000000000a0014002c01c80000000000
1504-09007e0101005000000000000000000000000000000000000000000000000000
1505-13007e0100010000010050000000000000000000000000000000000000000000
1506-1c007e0101005000f30300000000000000000000000000000000000000000000
1507-01087f0103000000ef0300000000000009000000000000000000000000000000
1508-6e6574207469746c6500000016007f0101005000010050000000000000000000
1509-0a0014002c01c8000000000009007f0101005000000000000000000000000000
1510-00000000000000000000000013007f0100010000010050000000000000000000
1511-0000000000000000000000001c007f0101005000f30300000000000000000000
1512-0000000000000000000000000108800103000000ef0300000000000009000000
1513-0000000000000000000000006e6574207469746c650000001600800101005000
1514-0100500000000000000000000a0014002c01c800000000000900800101005000
1515-0000000000000000000000000000000000000000000000001300800100010000
1516-0100500000000000000000000000000000000000000000001c00800101005000
1517-f303000000000000000000000000000000000000000000000108810103000000
1503+16008901010050000100500000000000000000000a0014002c01c80000000000
1504+0900890101005000000000000000000000000000000000000000000000000000
1505+1300890100010000010050000000000000000000000000000000000000000000
1506+1c00890101005000f30300000000000000000000000000000000000000000000
1507+01088a0103000000ef0300000000000009000000000000000000000000000000
1508+6e6574207469746c6500000016008a0101005000010050000000000000000000
1509+0a0014002c01c8000000000009008a0101005000000000000000000000000000
1510+00000000000000000000000013008a0100010000010050000000000000000000
1511+0000000000000000000000001c008a0101005000f30300000000000000000000
1512+00000000000000000000000001088b0103000000ef0300000000000009000000
1513+0000000000000000000000006e6574207469746c6500000016008b0101005000
1514+0100500000000000000000000a0014002c01c8000000000009008b0101005000
1515+00000000000000000000000000000000000000000000000013008b0100010000
1516+0100500000000000000000000000000000000000000000001c008b0101005000
1517+f3030000000000000000000000000000000000000000000001088c0103000000
15181518 ef03000000000000090000000000000000000000000000006e6574207469746c
1519-6500000016008101010050000100500000000000000000000a0014002c01c800
1520-0000000009008101010050000000000000000000000000000000000000000000
1521-0000000013008101000100000100500000000000000000000000000000000000
1522-000000001c00810101005000f303000000000000000000000000000000000000
1523-000000000108820103000000ef03000000000000090000000000000000000000
1524-000000006e6574207469746c6500000016008201010050000100500000000000
1525-000000000a0014002c01c8000000000009008201010050000000000000000000
1526-0000000000000000000000000000000013008201000100000100500000000000
1527-000000000000000000000000000000001c00820101005000f303000000000000
1528-000000000000000000000000000000000108830103000000ef03000000000000
1529-090000000000000000000000000000006e6574207469746c6500000016008301
1530-010050000100500000000000000000000a0014002c01c8000000000009008301
1531-0100500000000000000000000000000000000000000000000000000013008301
1532-000100000100500000000000000000000000000000000000000000001c008301
1533-01005000f3030000000000000000000000000000000000000000000001088401
1519+6500000016008c01010050000100500000000000000000000a0014002c01c800
1520+0000000009008c01010050000000000000000000000000000000000000000000
1521+0000000013008c01000100000100500000000000000000000000000000000000
1522+000000001c008c0101005000f303000000000000000000000000000000000000
1523+0000000001088d0103000000ef03000000000000090000000000000000000000
1524+000000006e6574207469746c6500000016008d01010050000100500000000000
1525+000000000a0014002c01c8000000000009008d01010050000000000000000000
1526+0000000000000000000000000000000013008d01000100000100500000000000
1527+000000000000000000000000000000001c008d0101005000f303000000000000
1528+0000000000000000000000000000000001088e0103000000ef03000000000000
1529+090000000000000000000000000000006e6574207469746c6500000016008e01
1530+010050000100500000000000000000000a0014002c01c8000000000009008e01
1531+0100500000000000000000000000000000000000000000000000000013008e01
1532+000100000100500000000000000000000000000000000000000000001c008e01
1533+01005000f3030000000000000000000000000000000000000000000001088f01
15341534 03000000ef03000000000000090000000000000000000000000000006e657420
1535-7469746c6500000016008401010050000100500000000000000000000a001400
1536-2c01c80000000000090084010100500000000000000000000000000000000000
1537-0000000000000000130084010001000001005000000000000000000000000000
1538-00000000000000001c00840101005000f3030000000000000000000000000000
1539-00000000000000000108850103000000ef030000000000000900000000000000
1540-00000000000000006e6574207469746c65000000160085010100500001005000
1541-00000000000000000a0014002c01c80000000000090085010100500000000000
1542-0000000000000000000000000000000000000000130085010001000001005000
1543-00000000000000000000000000000000000000001c00850101005000f3030000
1544-00000000000000000000000000000000000000000108860103000000ef030000
1535+7469746c6500000016008f01010050000100500000000000000000000a001400
1536+2c01c8000000000009008f010100500000000000000000000000000000000000
1537+000000000000000013008f010001000001005000000000000000000000000000
1538+00000000000000001c008f0101005000f3030000000000000000000000000000
1539+00000000000000000108900103000000ef030000000000000900000000000000
1540+00000000000000006e6574207469746c65000000160090010100500001005000
1541+00000000000000000a0014002c01c80000000000090090010100500000000000
1542+0000000000000000000000000000000000000000130090010001000001005000
1543+00000000000000000000000000000000000000001c00900101005000f3030000
1544+00000000000000000000000000000000000000000108910103000000ef030000
15451545 00000000090000000000000000000000000000006e6574207469746c65000000
1546-16008601010050000100500000000000000000000a0014002c01c80000000000
1547-0900860101005000000000000000000000000000000000000000000000000000
1548-1300860100010000010050000000000000000000000000000000000000000000
1549-1c00860101005000f30300000000000000000000000000000000000000000000
1550-0108870103000000ef0300000000000009000000000000000000000000000000
1551-6e6574207469746c650000001600870101005000010050000000000000000000
1552-0a0014002c01c800000000000900870101005000000000000000000000000000
1553-0000000000000000000000001300870100010000010050000000000000000000
1554-0000000000000000000000001c00870101005000f30300000000000000000000
1555-0000000000000000000000000108880103000000ef0300000000000009000000
1556-0000000000000000000000006e6574207469746c650000001600880101005000
1557-0100500000000000000000000a0014002c01c800000000000900880101005000
1558-0000000000000000000000000000000000000000000000001300880100010000
1559-0100500000000000000000000000000000000000000000001c00880101005000
1560-f303000000000000000000000000000000000000000000000108890103000000
1546+16009101010050000100500000000000000000000a0014002c01c80000000000
1547+0900910101005000000000000000000000000000000000000000000000000000
1548+1300910100010000010050000000000000000000000000000000000000000000
1549+1c00910101005000f30300000000000000000000000000000000000000000000
1550+0108920103000000ef0300000000000009000000000000000000000000000000
1551+6e6574207469746c650000001600920101005000010050000000000000000000
1552+0a0014002c01c800000000000900920101005000000000000000000000000000
1553+0000000000000000000000001300920100010000010050000000000000000000
1554+0000000000000000000000001c00920101005000f30300000000000000000000
1555+0000000000000000000000000108930103000000ef0300000000000009000000
1556+0000000000000000000000006e6574207469746c650000001600930101005000
1557+0100500000000000000000000a0014002c01c800000000000900930101005000
1558+0000000000000000000000000000000000000000000000001300930100010000
1559+0100500000000000000000000000000000000000000000001c00930101005000
1560+f303000000000000000000000000000000000000000000000108940103000000
15611561 ef03000000000000090000000000000000000000000000006e6574207469746c
1562-6500000016008901010050000100500000000000000000000a0014002c01c800
1563-0000000009008901010050000000000000000000000000000000000000000000
1564-0000000013008901000100000100500000000000000000000000000000000000
1565-000000001c00890101005000f303000000000000000000000000000000000000
1566-0000000001088a0103000000ef03000000000000090000000000000000000000
1567-000000006e6574207469746c6500000016008a01010050000100500000000000
1568-000000000a0014002c01c8000000000009008a01010050000000000000000000
1569-0000000000000000000000000000000013008a01000100000100500000000000
1570-000000000000000000000000000000001c008a0101005000f303000000000000
1571-0000000000000000000000000000000001088b0103000000ef03000000000000
1572-090000000000000000000000000000006e6574207469746c6500000016008b01
1573-010050000100500000000000000000000a0014002c01c8000000000009008b01
1574-0100500000000000000000000000000000000000000000000000000013008b01
1575-000100000100500000000000000000000000000000000000000000001c008b01
1576-01005000f3030000000000000000000000000000000000000000000001088c01
1562+6500000016009401010050000100500000000000000000000a0014002c01c800
1563+0000000009009401010050000000000000000000000000000000000000000000
1564+0000000013009401000100000100500000000000000000000000000000000000
1565+000000001c00940101005000f303000000000000000000000000000000000000
1566+000000000108950103000000ef03000000000000090000000000000000000000
1567+000000006e6574207469746c6500000016009501010050000100500000000000
1568+000000000a0014002c01c8000000000009009501010050000000000000000000
1569+0000000000000000000000000000000013009501000100000100500000000000
1570+000000000000000000000000000000001c00950101005000f303000000000000
1571+000000000000000000000000000000000108960103000000ef03000000000000
1572+090000000000000000000000000000006e6574207469746c6500000016009601
1573+010050000100500000000000000000000a0014002c01c8000000000009009601
1574+0100500000000000000000000000000000000000000000000000000013009601
1575+000100000100500000000000000000000000000000000000000000001c009601
1576+01005000f3030000000000000000000000000000000000000000000001089701
15771577 03000000ef03000000000000090000000000000000000000000000006e657420
1578-7469746c6500000016008c01010050000100500000000000000000000a001400
1579-2c01c8000000000009008c010100500000000000000000000000000000000000
1580-000000000000000013008c010001000001005000000000000000000000000000
1581-00000000000000001c008c0101005000f3030000000000000000000000000000
1582-000000000000000001088d0103000000ef030000000000000900000000000000
1583-00000000000000006e6574207469746c6500000016008d010100500001005000
1584-00000000000000000a0014002c01c8000000000009008d010100500000000000
1585-000000000000000000000000000000000000000013008d010001000001005000
1586-00000000000000000000000000000000000000001c008d0101005000f3030000
1587-000000000000000000000000000000000000000001088e0103000000ef030000
1578+7469746c6500000016009701010050000100500000000000000000000a001400
1579+2c01c80000000000090097010100500000000000000000000000000000000000
1580+0000000000000000130097010001000001005000000000000000000000000000
1581+00000000000000001c00970101005000f3030000000000000000000000000000
1582+00000000000000000108980103000000ef030000000000000900000000000000
1583+00000000000000006e6574207469746c65000000160098010100500001005000
1584+00000000000000000a0014002c01c80000000000090098010100500000000000
1585+0000000000000000000000000000000000000000130098010001000001005000
1586+00000000000000000000000000000000000000001c00980101005000f3030000
1587+00000000000000000000000000000000000000000108990103000000ef030000
15881588 00000000090000000000000000000000000000006e6574207469746c65000000
1589-16008e01010050000100500000000000000000000a0014002c01c80000000000
1590-09008e0101005000000000000000000000000000000000000000000000000000
1591-13008e0100010000010050000000000000000000000000000000000000000000
1592-1c008e0101005000f30300000000000000000000000000000000000000000000
1593-01088f0103000000ef0300000000000009000000000000000000000000000000
1594-6e6574207469746c6500000016008f0101005000010050000000000000000000
1595-0a0014002c01c8000000000009008f0101005000000000000000000000000000
1596-00000000000000000000000013008f0100010000010050000000000000000000
1597-0000000000000000000000001c008f0101005000f30300000000000000000000
1598-0000000000000000000000000108900103000000ef0300000000000009000000
1599-0000000000000000000000006e6574207469746c650000001600900101005000
1600-0100500000000000000000000a0014002c01c800000000000900900101005000
1601-0000000000000000000000000000000000000000000000001300900100010000
1602-0100500000000000000000000000000000000000000000001c00900101005000
1603-f303000000000000000000000000000000000000000000000108910103000000
1589+16009901010050000100500000000000000000000a0014002c01c80000000000
1590+0900990101005000000000000000000000000000000000000000000000000000
1591+1300990100010000010050000000000000000000000000000000000000000000
1592+1c00990101005000f30300000000000000000000000000000000000000000000
1593+01089a0103000000ef0300000000000009000000000000000000000000000000
1594+6e6574207469746c6500000016009a0101005000010050000000000000000000
1595+0a0014002c01c8000000000009009a0101005000000000000000000000000000
1596+00000000000000000000000013009a0100010000010050000000000000000000
1597+0000000000000000000000001c009a0101005000f30300000000000000000000
1598+00000000000000000000000001089b0103000000ef0300000000000009000000
1599+0000000000000000000000006e6574207469746c6500000016009b0101005000
1600+0100500000000000000000000a0014002c01c8000000000009009b0101005000
1601+00000000000000000000000000000000000000000000000013009b0100010000
1602+0100500000000000000000000000000000000000000000001c009b0101005000
1603+f3030000000000000000000000000000000000000000000001089c0103000000
16041604 ef03000000000000090000000000000000000000000000006e6574207469746c
1605-6500000016009101010050000100500000000000000000000a0014002c01c800
1606-0000000009009101010050000000000000000000000000000000000000000000
1607-0000000013009101000100000100500000000000000000000000000000000000
1608-000000001c00910101005000f303000000000000000000000000000000000000
1609-000000000108920103000000ef03000000000000090000000000000000000000
1610-000000006e6574207469746c6500000016009201010050000100500000000000
1611-000000000a0014002c01c8000000000009009201010050000000000000000000
1612-0000000000000000000000000000000013009201000100000100500000000000
1613-000000000000000000000000000000001c00920101005000f303000000000000
1614-000000000000000000000000000000000108930103000000ef03000000000000
1615-090000000000000000000000000000006e6574207469746c6500000016009301
1616-010050000100500000000000000000000a0014002c01c8000000000009009301
1617-0100500000000000000000000000000000000000000000000000000013009301
1618-000100000100500000000000000000000000000000000000000000001c009301
1619-01005000f3030000000000000000000000000000000000000000000001089401
1605+6500000016009c01010050000100500000000000000000000a0014002c01c800
1606+0000000009009c01010050000000000000000000000000000000000000000000
1607+0000000013009c01000100000100500000000000000000000000000000000000
1608+000000001c009c0101005000f303000000000000000000000000000000000000
1609+0000000001089d0103000000ef03000000000000090000000000000000000000
1610+000000006e6574207469746c6500000016009d01010050000100500000000000
1611+000000000a0014002c01c8000000000009009d01010050000000000000000000
1612+0000000000000000000000000000000013009d01000100000100500000000000
1613+000000000000000000000000000000001c009d0101005000f303000000000000
1614+0000000000000000000000000000000001089e0103000000ef03000000000000
1615+090000000000000000000000000000006e6574207469746c6500000016009e01
1616+010050000100500000000000000000000a0014002c01c8000000000009009e01
1617+0100500000000000000000000000000000000000000000000000000013009e01
1618+000100000100500000000000000000000000000000000000000000001c009e01
1619+01005000f3030000000000000000000000000000000000000000000001089f01
16201620 03000000ef03000000000000090000000000000000000000000000006e657420
1621-7469746c6500000016009401010050000100500000000000000000000a001400
1622-2c01c80000000000090094010100500000000000000000000000000000000000
1623-0000000000000000130094010001000001005000000000000000000000000000
1624-00000000000000001c00940101005000f3030000000000000000000000000000
1625-00000000000000000108950103000000ef030000000000000900000000000000
1626-00000000000000006e6574207469746c65000000160095010100500001005000
1627-00000000000000000a0014002c01c80000000000090095010100500000000000
1628-0000000000000000000000000000000000000000130095010001000001005000
1629-00000000000000000000000000000000000000001c00950101005000f3030000
1630-00000000000000000000000000000000000000000108960103000000ef030000
1621+7469746c6500000016009f01010050000100500000000000000000000a001400
1622+2c01c8000000000009009f010100500000000000000000000000000000000000
1623+000000000000000013009f010001000001005000000000000000000000000000
1624+00000000000000001c009f0101005000f3030000000000000000000000000000
1625+00000000000000000108a00103000000ef030000000000000900000000000000
1626+00000000000000006e6574207469746c650000001600a0010100500001005000
1627+00000000000000000a0014002c01c800000000000900a0010100500000000000
1628+00000000000000000000000000000000000000001300a0010001000001005000
1629+00000000000000000000000000000000000000001c00a00101005000f3030000
1630+00000000000000000000000000000000000000000108a10103000000ef030000
16311631 00000000090000000000000000000000000000006e6574207469746c65000000
1632-16009601010050000100500000000000000000000a0014002c01c80000000000
1633-0900960101005000000000000000000000000000000000000000000000000000
1634-1300960100010000010050000000000000000000000000000000000000000000
1635-1c00960101005000f30300000000000000000000000000000000000000000000
1636-0108970103000000ef0300000000000009000000000000000000000000000000
1637-6e6574207469746c650000001600970101005000010050000000000000000000
1638-0a0014002c01c800000000000900970101005000000000000000000000000000
1639-0000000000000000000000001300970100010000010050000000000000000000
1640-0000000000000000000000001c00970101005000f30300000000000000000000
1641-0000000000000000000000000108980103000000ef0300000000000009000000
1642-0000000000000000000000006e6574207469746c650000001600980101005000
1643-0100500000000000000000000a0014002c01c800000000000900980101005000
1644-0000000000000000000000000000000000000000000000001300980100010000
1645-0100500000000000000000000000000000000000000000001c00980101005000
1646-f303000000000000000000000000000000000000000000000108990103000000
1632+1600a101010050000100500000000000000000000a0014002c01c80000000000
1633+0900a10101005000000000000000000000000000000000000000000000000000
1634+1300a10100010000010050000000000000000000000000000000000000000000
1635+1c00a10101005000f30300000000000000000000000000000000000000000000
1636+0108a20103000000ef0300000000000009000000000000000000000000000000
1637+6e6574207469746c650000001600a20101005000010050000000000000000000
1638+0a0014002c01c800000000000900a20101005000000000000000000000000000
1639+0000000000000000000000001300a20100010000010050000000000000000000
1640+0000000000000000000000001c00a20101005000f30300000000000000000000
1641+0000000000000000000000000108a30103000000ef0300000000000009000000
1642+0000000000000000000000006e6574207469746c650000001600a30101005000
1643+0100500000000000000000000a0014002c01c800000000000900a30101005000
1644+0000000000000000000000000000000000000000000000001300a30100010000
1645+0100500000000000000000000000000000000000000000001c00a30101005000
1646+f303000000000000000000000000000000000000000000000108a40103000000
16471647 ef03000000000000090000000000000000000000000000006e6574207469746c
1648-6500000016009901010050000100500000000000000000000a0014002c01c800
1649-0000000009009901010050000000000000000000000000000000000000000000
1650-0000000013009901000100000100500000000000000000000000000000000000
1651-000000001c00990101005000f303000000000000000000000000000000000000
1652-0000000001089a0103000000ef03000000000000090000000000000000000000
1653-000000006e6574207469746c6500000016009a01010050000100500000000000
1654-000000000a0014002c01c8000000000009009a01010050000000000000000000
1655-0000000000000000000000000000000013009a01000100000100500000000000
1656-000000000000000000000000000000001c009a0101005000f303000000000000
1657-0000000000000000000000000000000001089b0103000000ef03000000000000
1658-090000000000000000000000000000006e6574207469746c6500000016009b01
1659-010050000100500000000000000000000a0014002c01c8000000000009009b01
1660-0100500000000000000000000000000000000000000000000000000013009b01
1661-000100000100500000000000000000000000000000000000000000001c009b01
1662-01005000f3030000000000000000000000000000000000000000000001089c01
1648+650000001600a401010050000100500000000000000000000a0014002c01c800
1649+000000000900a401010050000000000000000000000000000000000000000000
1650+000000001300a401000100000100500000000000000000000000000000000000
1651+000000001c00a40101005000f303000000000000000000000000000000000000
1652+000000000108a50103000000ef03000000000000090000000000000000000000
1653+000000006e6574207469746c650000001600a501010050000100500000000000
1654+000000000a0014002c01c800000000000900a501010050000000000000000000
1655+000000000000000000000000000000001300a501000100000100500000000000
1656+000000000000000000000000000000001c00a50101005000f303000000000000
1657+000000000000000000000000000000000108a60103000000ef03000000000000
1658+090000000000000000000000000000006e6574207469746c650000001600a601
1659+010050000100500000000000000000000a0014002c01c800000000000900a601
1660+010050000000000000000000000000000000000000000000000000001300a601
1661+000100000100500000000000000000000000000000000000000000001c00a601
1662+01005000f303000000000000000000000000000000000000000000000108a701
16631663 03000000ef03000000000000090000000000000000000000000000006e657420
1664-7469746c6500000016009c01010050000100500000000000000000000a001400
1665-2c01c8000000000009009c010100500000000000000000000000000000000000
1666-000000000000000013009c010001000001005000000000000000000000000000
1667-00000000000000001c009c0101005000f3030000000000000000000000000000
1668-000000000000000001089d0103000000ef030000000000000900000000000000
1669-00000000000000006e6574207469746c6500000016009d010100500001005000
1670-00000000000000000a0014002c01c8000000000009009d010100500000000000
1671-000000000000000000000000000000000000000013009d010001000001005000
1672-00000000000000000000000000000000000000001c009d0101005000f3030000
1673-000000000000000000000000000000000000000001089e0103000000ef030000
1664+7469746c650000001600a701010050000100500000000000000000000a001400
1665+2c01c800000000000900a7010100500000000000000000000000000000000000
1666+00000000000000001300a7010001000001005000000000000000000000000000
1667+00000000000000001c00a70101005000f3030000000000000000000000000000
1668+00000000000000000108a80103000000ef030000000000000900000000000000
1669+00000000000000006e6574207469746c650000001600a8010100500001005000
1670+00000000000000000a0014002c01c800000000000900a8010100500000000000
1671+00000000000000000000000000000000000000001300a8010001000001005000
1672+00000000000000000000000000000000000000001c00a80101005000f3030000
1673+00000000000000000000000000000000000000000108a90103000000ef030000
16741674 00000000090000000000000000000000000000006e6574207469746c65000000
1675-16009e01010050000100500000000000000000000a0014002c01c80000000000
1676-09009e0101005000000000000000000000000000000000000000000000000000
1677-13009e0100010000010050000000000000000000000000000000000000000000
1678-1c009e0101005000f30300000000000000000000000000000000000000000000
1679-01089f0103000000ef0300000000000009000000000000000000000000000000
1680-6e6574207469746c6500000016009f0101005000010050000000000000000000
1681-0a0014002c01c8000000000009009f0101005000000000000000000000000000
1682-00000000000000000000000013009f0100010000010050000000000000000000
1683-0000000000000000000000001c009f0101005000f30300000000000000000000
1684-0000000000000000000000000108a00103000000ef0300000000000009000000
1685-0000000000000000000000006e6574207469746c650000001600a00101005000
1686-0100500000000000000000000a0014002c01c800000000000900a00101005000
1687-0000000000000000000000000000000000000000000000001300a00100010000
1688-0100500000000000000000000000000000000000000000001c00a00101005000
1689-f303000000000000000000000000000000000000000000000108a10103000000
1675+1600a901010050000100500000000000000000000a0014002c01c80000000000
1676+0900a90101005000000000000000000000000000000000000000000000000000
1677+1300a90100010000010050000000000000000000000000000000000000000000
1678+1c00a90101005000f30300000000000000000000000000000000000000000000
1679+0108aa0103000000ef0300000000000009000000000000000000000000000000
1680+6e6574207469746c650000001600aa0101005000010050000000000000000000
1681+0a0014002c01c800000000000900aa0101005000000000000000000000000000
1682+0000000000000000000000001300aa0100010000010050000000000000000000
1683+0000000000000000000000001c00aa0101005000f30300000000000000000000
1684+0000000000000000000000000108ab0103000000ef0300000000000009000000
1685+0000000000000000000000006e6574207469746c650000001600ab0101005000
1686+0100500000000000000000000a0014002c01c800000000000900ab0101005000
1687+0000000000000000000000000000000000000000000000001300ab0100010000
1688+0100500000000000000000000000000000000000000000001c00ab0101005000
1689+f303000000000000000000000000000000000000000000000108ac0103000000
16901690 ef03000000000000090000000000000000000000000000006e6574207469746c
1691-650000001600a101010050000100500000000000000000000a0014002c01c800
1692-000000000900a101010050000000000000000000000000000000000000000000
1693-000000001300a101000100000100500000000000000000000000000000000000
1694-000000001c00a10101005000f303000000000000000000000000000000000000
1695-000000000108a20103000000ef03000000000000090000000000000000000000
1696-000000006e6574207469746c650000001600a201010050000100500000000000
1697-000000000a0014002c01c800000000000900a201010050000000000000000000
1698-000000000000000000000000000000001300a201000100000100500000000000
1699-000000000000000000000000000000001c00a20101005000f303000000000000
1700-000000000000000000000000000000000108a30103000000ef03000000000000
1701-090000000000000000000000000000006e6574207469746c650000001600a301
1702-010050000100500000000000000000000a0014002c01c800000000000900a301
1703-010050000000000000000000000000000000000000000000000000001300a301
1704-000100000100500000000000000000000000000000000000000000001c00a301
1705-01005000f303000000000000000000000000000000000000000000000108a401
1691+650000001600ac01010050000100500000000000000000000a0014002c01c800
1692+000000000900ac01010050000000000000000000000000000000000000000000
1693+000000001300ac01000100000100500000000000000000000000000000000000
1694+000000001c00ac0101005000f303000000000000000000000000000000000000
1695+000000000108ad0103000000ef03000000000000090000000000000000000000
1696+000000006e6574207469746c650000001600ad01010050000100500000000000
1697+000000000a0014002c01c800000000000900ad01010050000000000000000000
1698+000000000000000000000000000000001300ad01000100000100500000000000
1699+000000000000000000000000000000001c00ad0101005000f303000000000000
1700+000000000000000000000000000000000108ae0103000000ef03000000000000
1701+090000000000000000000000000000006e6574207469746c650000001600ae01
1702+010050000100500000000000000000000a0014002c01c800000000000900ae01
1703+010050000000000000000000000000000000000000000000000000001300ae01
1704+000100000100500000000000000000000000000000000000000000001c00ae01
1705+01005000f303000000000000000000000000000000000000000000000108af01
17061706 03000000ef03000000000000090000000000000000000000000000006e657420
1707-7469746c650000001600a401010050000100500000000000000000000a001400
1708-2c01c800000000000900a4010100500000000000000000000000000000000000
1709-00000000000000001300a4010001000001005000000000000000000000000000
1710-00000000000000001c00a40101005000f3030000000000000000000000000000
1711-00000000000000000108a50103000000ef030000000000000900000000000000
1712-00000000000000006e6574207469746c650000001600a5010100500001005000
1713-00000000000000000a0014002c01c800000000000900a5010100500000000000
1714-00000000000000000000000000000000000000001300a5010001000001005000
1715-00000000000000000000000000000000000000001c00a50101005000f3030000
1716-00000000000000000000000000000000000000000108a60103000000ef030000
1707+7469746c650000001600af01010050000100500000000000000000000a001400
1708+2c01c800000000000900af010100500000000000000000000000000000000000
1709+00000000000000001300af010001000001005000000000000000000000000000
1710+00000000000000001c00af0101005000f3030000000000000000000000000000
1711+00000000000000000108b00103000000ef030000000000000900000000000000
1712+00000000000000006e6574207469746c650000001600b0010100500001005000
1713+00000000000000000a0014002c01c800000000000900b0010100500000000000
1714+00000000000000000000000000000000000000001300b0010001000001005000
1715+00000000000000000000000000000000000000001c00b00101005000f3030000
1716+00000000000000000000000000000000000000000108b10103000000ef030000
17171717 00000000090000000000000000000000000000006e6574207469746c65000000
1718-1600a601010050000100500000000000000000000a0014002c01c80000000000
1719-0900a60101005000000000000000000000000000000000000000000000000000
1720-1300a60100010000010050000000000000000000000000000000000000000000
1721-1c00a60101005000f30300000000000000000000000000000000000000000000
1722-0108a70103000000ef0300000000000009000000000000000000000000000000
1723-6e6574207469746c650000001600a70101005000010050000000000000000000
1724-0a0014002c01c800000000000900a70101005000000000000000000000000000
1725-0000000000000000000000001300a70100010000010050000000000000000000
1726-0000000000000000000000001c00a70101005000f30300000000000000000000
1727-0000000000000000000000000108a80103000000ef0300000000000009000000
1728-0000000000000000000000006e6574207469746c650000001600a80101005000
1729-0100500000000000000000000a0014002c01c800000000000900a80101005000
1730-0000000000000000000000000000000000000000000000001300a80100010000
1731-0100500000000000000000000000000000000000000000001c00a80101005000
1732-f303000000000000000000000000000000000000000000000108a90103000000
1718+1600b101010050000100500000000000000000000a0014002c01c80000000000
1719+0900b10101005000000000000000000000000000000000000000000000000000
1720+1300b10100010000010050000000000000000000000000000000000000000000
1721+1c00b10101005000f30300000000000000000000000000000000000000000000
1722+0108b20103000000ef0300000000000009000000000000000000000000000000
1723+6e6574207469746c650000001600b20101005000010050000000000000000000
1724+0a0014002c01c800000000000900b20101005000000000000000000000000000
1725+0000000000000000000000001300b20100010000010050000000000000000000
1726+0000000000000000000000001c00b20101005000f30300000000000000000000
1727+0000000000000000000000000108b30103000000ef0300000000000009000000
1728+0000000000000000000000006e6574207469746c650000001600b30101005000
1729+0100500000000000000000000a0014002c01c800000000000900b30101005000
1730+0000000000000000000000000000000000000000000000001300b30100010000
1731+0100500000000000000000000000000000000000000000001c00b30101005000
1732+f303000000000000000000000000000000000000000000000108b40103000000
17331733 ef03000000000000090000000000000000000000000000006e6574207469746c
1734-650000001600a901010050000100500000000000000000000a0014002c01c800
1735-000000000900a901010050000000000000000000000000000000000000000000
1736-000000001300a901000100000100500000000000000000000000000000000000
1737-000000001c00a90101005000f303000000000000000000000000000000000000
1738-000000000108aa0103000000ef03000000000000090000000000000000000000
1739-000000006e6574207469746c650000001600aa01010050000100500000000000
1740-000000000a0014002c01c800000000000900aa01010050000000000000000000
1741-000000000000000000000000000000001300aa01000100000100500000000000
1742-000000000000000000000000000000001c00aa0101005000f303000000000000
1743-000000000000000000000000000000000108ab0103000000ef03000000000000
1744-090000000000000000000000000000006e6574207469746c650000001600ab01
1745-010050000100500000000000000000000a0014002c01c800000000000900ab01
1746-010050000000000000000000000000000000000000000000000000001300ab01
1747-000100000100500000000000000000000000000000000000000000001c00ab01
1748-01005000f303000000000000000000000000000000000000000000000108ac01
1734+650000001600b401010050000100500000000000000000000a0014002c01c800
1735+000000000900b401010050000000000000000000000000000000000000000000
1736+000000001300b401000100000100500000000000000000000000000000000000
1737+000000001c00b40101005000f303000000000000000000000000000000000000
1738+000000000108b50103000000ef03000000000000090000000000000000000000
1739+000000006e6574207469746c650000001600b501010050000100500000000000
1740+000000000a0014002c01c800000000000900b501010050000000000000000000
1741+000000000000000000000000000000001300b501000100000100500000000000
1742+000000000000000000000000000000001c00b50101005000f303000000000000
1743+000000000000000000000000000000000108b60103000000ef03000000000000
1744+090000000000000000000000000000006e6574207469746c650000001600b601
1745+010050000100500000000000000000000a0014002c01c800000000000900b601
1746+010050000000000000000000000000000000000000000000000000001300b601
1747+000100000100500000000000000000000000000000000000000000001c00b601
1748+01005000f303000000000000000000000000000000000000000000000108b701
17491749 03000000ef03000000000000090000000000000000000000000000006e657420
1750-7469746c650000001600ac01010050000100500000000000000000000a001400
1751-2c01c800000000000900ac010100500000000000000000000000000000000000
1752-00000000000000001300ac010001000001005000000000000000000000000000
1753-00000000000000001c00ac0101005000f3030000000000000000000000000000
1754-00000000000000000108ad0103000000ef030000000000000900000000000000
1755-00000000000000006e6574207469746c650000001600ad010100500001005000
1756-00000000000000000a0014002c01c800000000000900ad010100500000000000
1757-00000000000000000000000000000000000000001300ad010001000001005000
1758-00000000000000000000000000000000000000001c00ad0101005000f3030000
1759-00000000000000000000000000000000000000000108ae0103000000ef030000
1750+7469746c650000001600b701010050000100500000000000000000000a001400
1751+2c01c800000000000900b7010100500000000000000000000000000000000000
1752+00000000000000001300b7010001000001005000000000000000000000000000
1753+00000000000000001c00b70101005000f3030000000000000000000000000000
1754+00000000000000000108b80103000000ef030000000000000900000000000000
1755+00000000000000006e6574207469746c650000001600b8010100500001005000
1756+00000000000000000a0014002c01c800000000000900b8010100500000000000
1757+00000000000000000000000000000000000000001300b8010001000001005000
1758+00000000000000000000000000000000000000001c00b80101005000f3030000
1759+00000000000000000000000000000000000000000108b90103000000ef030000
17601760 00000000090000000000000000000000000000006e6574207469746c65000000
1761-1600ae01010050000100500000000000000000000a0014002c01c80000000000
1762-0900ae0101005000000000000000000000000000000000000000000000000000
1763-1300ae0100010000010050000000000000000000000000000000000000000000
1764-1c00ae0101005000f30300000000000000000000000000000000000000000000
1765-0108af0103000000ef0300000000000009000000000000000000000000000000
1766-6e6574207469746c650000001600af0101005000010050000000000000000000
1767-0a0014002c01c800000000000900af0101005000000000000000000000000000
1768-0000000000000000000000001300af0100010000010050000000000000000000
1769-0000000000000000000000001c00af0101005000f30300000000000000000000
1770-0000000000000000000000000108b00103000000ef0300000000000009000000
1771-0000000000000000000000006e6574207469746c650000001600b00101005000
1772-0100500000000000000000000a0014002c01c800000000000900b00101005000
1773-0000000000000000000000000000000000000000000000001300b00100010000
1774-0100500000000000000000000000000000000000000000001c00b00101005000
1775-f303000000000000000000000000000000000000000000000108b10103000000
1761+1600b901010050000100500000000000000000000a0014002c01c80000000000
1762+0900b90101005000000000000000000000000000000000000000000000000000
1763+1300b90100010000010050000000000000000000000000000000000000000000
1764+1c00b90101005000f30300000000000000000000000000000000000000000000
1765+0108ba0103000000ef0300000000000009000000000000000000000000000000
1766+6e6574207469746c650000001600ba0101005000010050000000000000000000
1767+0a0014002c01c800000000000900ba0101005000000000000000000000000000
1768+0000000000000000000000001300ba0100010000010050000000000000000000
1769+0000000000000000000000001c00ba0101005000f30300000000000000000000
1770+0000000000000000000000000108bb0103000000ef0300000000000009000000
1771+0000000000000000000000006e6574207469746c650000001600bb0101005000
1772+0100500000000000000000000a0014002c01c800000000000900bb0101005000
1773+0000000000000000000000000000000000000000000000001300bb0100010000
1774+0100500000000000000000000000000000000000000000001c00bb0101005000
1775+f303000000000000000000000000000000000000000000000108bc0103000000
17761776 ef03000000000000090000000000000000000000000000006e6574207469746c
1777-650000001600b101010050000100500000000000000000000a0014002c01c800
1778-000000000900b101010050000000000000000000000000000000000000000000
1779-000000001300b101000100000100500000000000000000000000000000000000
1780-000000001c00b10101005000f303000000000000000000000000000000000000
1781-000000000108b20103000000ef03000000000000090000000000000000000000
1782-000000006e6574207469746c650000001600b201010050000100500000000000
1783-000000000a0014002c01c800000000000900b201010050000000000000000000
1784-000000000000000000000000000000001300b201000100000100500000000000
1785-000000000000000000000000000000001c00b20101005000f303000000000000
1786-000000000000000000000000000000000108b30103000000ef03000000000000
1787-090000000000000000000000000000006e6574207469746c650000001600b301
1788-010050000100500000000000000000000a0014002c01c800000000000900b301
1789-010050000000000000000000000000000000000000000000000000001300b301
1790-000100000100500000000000000000000000000000000000000000001c00b301
1791-01005000f303000000000000000000000000000000000000000000000108b401
1777+650000001600bc01010050000100500000000000000000000a0014002c01c800
1778+000000000900bc01010050000000000000000000000000000000000000000000
1779+000000001300bc01000100000100500000000000000000000000000000000000
1780+000000001c00bc0101005000f303000000000000000000000000000000000000
1781+000000000108bd0103000000ef03000000000000090000000000000000000000
1782+000000006e6574207469746c650000001600bd01010050000100500000000000
1783+000000000a0014002c01c800000000000900bd01010050000000000000000000
1784+000000000000000000000000000000001300bd01000100000100500000000000
1785+000000000000000000000000000000001c00bd0101005000f303000000000000
1786+000000000000000000000000000000000108be0103000000ef03000000000000
1787+090000000000000000000000000000006e6574207469746c650000001600be01
1788+010050000100500000000000000000000a0014002c01c800000000000900be01
1789+010050000000000000000000000000000000000000000000000000001300be01
1790+000100000100500000000000000000000000000000000000000000001c00be01
1791+01005000f303000000000000000000000000000000000000000000000108bf01
17921792 03000000ef03000000000000090000000000000000000000000000006e657420
1793-7469746c650000001600b401010050000100500000000000000000000a001400
1794-2c01c800000000000900b4010100500000000000000000000000000000000000
1795-00000000000000001300b4010001000001005000000000000000000000000000
1796-00000000000000001c00b40101005000f3030000000000000000000000000000
1797-00000000000000000108b50103000000ef030000000000000900000000000000
1798-00000000000000006e6574207469746c650000001600b5010100500001005000
1799-00000000000000000a0014002c01c800000000000900b5010100500000000000
1800-00000000000000000000000000000000000000001300b5010001000001005000
1801-00000000000000000000000000000000000000001c00b50101005000f3030000
1802-00000000000000000000000000000000000000000108b60103000000ef030000
1793+7469746c650000001600bf01010050000100500000000000000000000a001400
1794+2c01c800000000000900bf010100500000000000000000000000000000000000
1795+00000000000000001300bf010001000001005000000000000000000000000000
1796+00000000000000001c00bf0101005000f3030000000000000000000000000000
1797+00000000000000000108c00103000000ef030000000000000900000000000000
1798+00000000000000006e6574207469746c650000001600c0010100500001005000
1799+00000000000000000a0014002c01c800000000000900c0010100500000000000
1800+00000000000000000000000000000000000000001300c0010001000001005000
1801+00000000000000000000000000000000000000001c00c00101005000f3030000
1802+00000000000000000000000000000000000000000108c10103000000ef030000
18031803 00000000090000000000000000000000000000006e6574207469746c65000000
1804-1600b601010050000100500000000000000000000a0014002c01c80000000000
1805-0900b60101005000000000000000000000000000000000000000000000000000
1806-1300b60100010000010050000000000000000000000000000000000000000000
1807-1c00b60101005000f30300000000000000000000000000000000000000000000
1808-0108b70103000000ef0300000000000009000000000000000000000000000000
1809-6e6574207469746c650000001600b70101005000010050000000000000000000
1810-0a0014002c01c800000000000900b70101005000000000000000000000000000
1811-0000000000000000000000001300b70100010000010050000000000000000000
1812-0000000000000000000000001c00b70101005000f30300000000000000000000
1813-0000000000000000000000000108b80103000000ef0300000000000009000000
1814-0000000000000000000000006e6574207469746c650000001600b80101005000
1815-0100500000000000000000000a0014002c01c800000000000900b80101005000
1816-0000000000000000000000000000000000000000000000001300b80100010000
1817-0100500000000000000000000000000000000000000000001c00b80101005000
1818-f303000000000000000000000000000000000000000000000108b90103000000
1804+1600c101010050000100500000000000000000000a0014002c01c80000000000
1805+0900c10101005000000000000000000000000000000000000000000000000000
1806+1300c10100010000010050000000000000000000000000000000000000000000
1807+1c00c10101005000f30300000000000000000000000000000000000000000000
1808+0108c20103000000ef0300000000000009000000000000000000000000000000
1809+6e6574207469746c650000001600c20101005000010050000000000000000000
1810+0a0014002c01c800000000000900c20101005000000000000000000000000000
1811+0000000000000000000000001300c20100010000010050000000000000000000
1812+0000000000000000000000001c00c20101005000f30300000000000000000000
1813+0000000000000000000000000108c30103000000ef0300000000000009000000
1814+0000000000000000000000006e6574207469746c650000001600c30101005000
1815+0100500000000000000000000a0014002c01c800000000000900c30101005000
1816+0000000000000000000000000000000000000000000000001300c30100010000
1817+0100500000000000000000000000000000000000000000001c00c30101005000
1818+f303000000000000000000000000000000000000000000000108c40103000000
18191819 ef03000000000000090000000000000000000000000000006e6574207469746c
1820-650000001600b901010050000100500000000000000000000a0014002c01c800
1821-000000000900b901010050000000000000000000000000000000000000000000
1822-000000001300b901000100000100500000000000000000000000000000000000
1823-000000001c00b90101005000f303000000000000000000000000000000000000
1824-000000000108ba0103000000ef03000000000000090000000000000000000000
1825-000000006e6574207469746c650000001600ba01010050000100500000000000
1826-000000000a0014002c01c800000000000900ba01010050000000000000000000
1827-000000000000000000000000000000001300ba01000100000100500000000000
1828-000000000000000000000000000000001c00ba0101005000f303000000000000
1829-000000000000000000000000000000000108bb0103000000ef03000000000000
1830-090000000000000000000000000000006e6574207469746c650000001600bb01
1831-010050000100500000000000000000000a0014002c01c800000000000900bb01
1832-010050000000000000000000000000000000000000000000000000001300bb01
1833-000100000100500000000000000000000000000000000000000000001c00bb01
1834-01005000f303000000000000000000000000000000000000000000000108bc01
1820+650000001600c401010050000100500000000000000000000a0014002c01c800
1821+000000000900c401010050000000000000000000000000000000000000000000
1822+000000001300c401000100000100500000000000000000000000000000000000
1823+000000001c00c40101005000f303000000000000000000000000000000000000
1824+000000000108c50103000000ef03000000000000090000000000000000000000
1825+000000006e6574207469746c650000001600c501010050000100500000000000
1826+000000000a0014002c01c800000000000900c501010050000000000000000000
1827+000000000000000000000000000000001300c501000100000100500000000000
1828+000000000000000000000000000000001c00c50101005000f303000000000000
1829+000000000000000000000000000000000108c60103000000ef03000000000000
1830+090000000000000000000000000000006e6574207469746c650000001600c601
1831+010050000100500000000000000000000a0014002c01c800000000000900c601
1832+010050000000000000000000000000000000000000000000000000001300c601
1833+000100000100500000000000000000000000000000000000000000001c00c601
1834+01005000f303000000000000000000000000000000000000000000000108c701
18351835 03000000ef03000000000000090000000000000000000000000000006e657420
1836-7469746c650000001600bc01010050000100500000000000000000000a001400
1837-2c01c800000000000900bc010100500000000000000000000000000000000000
1838-00000000000000001300bc010001000001005000000000000000000000000000
1839-00000000000000001c00bc0101005000f3030000000000000000000000000000
1840-00000000000000000108bd0103000000ef030000000000000900000000000000
1841-00000000000000006e6574207469746c650000001600bd010100500001005000
1842-00000000000000000a0014002c01c800000000000900bd010100500000000000
1843-00000000000000000000000000000000000000001300bd010001000001005000
1844-00000000000000000000000000000000000000001c00bd0101005000f3030000
1845-00000000000000000000000000000000000000000108be0103000000ef030000
1836+7469746c650000001600c701010050000100500000000000000000000a001400
1837+2c01c800000000000900c7010100500000000000000000000000000000000000
1838+00000000000000001300c7010001000001005000000000000000000000000000
1839+00000000000000001c00c70101005000f3030000000000000000000000000000
1840+00000000000000000108c80103000000ef030000000000000900000000000000
1841+00000000000000006e6574207469746c650000001600c8010100500001005000
1842+00000000000000000a0014002c01c800000000000900c8010100500000000000
1843+00000000000000000000000000000000000000001300c8010001000001005000
1844+00000000000000000000000000000000000000001c00c80101005000f3030000
1845+00000000000000000000000000000000000000000108c90103000000ef030000
18461846 00000000090000000000000000000000000000006e6574207469746c65000000
1847-1600be01010050000100500000000000000000000a0014002c01c80000000000
1848-0900be0101005000000000000000000000000000000000000000000000000000
1849-1300be0100010000010050000000000000000000000000000000000000000000
1850-1c00be0101005000f30300000000000000000000000000000000000000000000
1851-0108bf0103000000ef0300000000000009000000000000000000000000000000
1852-6e6574207469746c650000001600bf0101005000010050000000000000000000
1853-0a0014002c01c800000000000900bf0101005000000000000000000000000000
1854-0000000000000000000000001300bf0100010000010050000000000000000000
1855-0000000000000000000000001c00bf0101005000f30300000000000000000000
1856-0000000000000000000000000108c00103000000ef0300000000000009000000
1857-0000000000000000000000006e6574207469746c650000001600c00101005000
1858-0100500000000000000000000a0014002c01c800000000000900c00101005000
1859-0000000000000000000000000000000000000000000000001300c00100010000
1860-0100500000000000000000000000000000000000000000001c00c00101005000
1861-f303000000000000000000000000000000000000000000000108c10103000000
1847+1600c901010050000100500000000000000000000a0014002c01c80000000000
1848+0900c90101005000000000000000000000000000000000000000000000000000
1849+1300c90100010000010050000000000000000000000000000000000000000000
1850+1c00c90101005000f30300000000000000000000000000000000000000000000
1851+0108ca0103000000ef0300000000000009000000000000000000000000000000
1852+6e6574207469746c650000001600ca0101005000010050000000000000000000
1853+0a0014002c01c800000000000900ca0101005000000000000000000000000000
1854+0000000000000000000000001300ca0100010000010050000000000000000000
1855+0000000000000000000000001c00ca0101005000f30300000000000000000000
1856+0000000000000000000000000108cb0103000000ef0300000000000009000000
1857+0000000000000000000000006e6574207469746c650000001600cb0101005000
1858+0100500000000000000000000a0014002c01c800000000000900cb0101005000
1859+0000000000000000000000000000000000000000000000001300cb0100010000
1860+0100500000000000000000000000000000000000000000001c00cb0101005000
1861+f303000000000000000000000000000000000000000000000108cc0103000000
18621862 ef03000000000000090000000000000000000000000000006e6574207469746c
1863-650000001600c101010050000100500000000000000000000a0014002c01c800
1864-000000000900c101010050000000000000000000000000000000000000000000
1865-000000001300c101000100000100500000000000000000000000000000000000
1866-000000001c00c10101005000f303000000000000000000000000000000000000
1867-000000000108c20103000000ef03000000000000090000000000000000000000
1868-000000006e6574207469746c650000001600c201010050000100500000000000
1869-000000000a0014002c01c800000000000900c201010050000000000000000000
1870-000000000000000000000000000000001300c201000100000100500000000000
1871-000000000000000000000000000000001c00c20101005000f303000000000000
1872-000000000000000000000000000000000108c30103000000ef03000000000000
1873-090000000000000000000000000000006e6574207469746c650000001600c301
1874-010050000100500000000000000000000a0014002c01c800000000000900c301
1875-010050000000000000000000000000000000000000000000000000001300c301
1876-000100000100500000000000000000000000000000000000000000001c00c301
1877-01005000f303000000000000000000000000000000000000000000000108c401
1863+650000001600cc01010050000100500000000000000000000a0014002c01c800
1864+000000000900cc01010050000000000000000000000000000000000000000000
1865+000000001300cc01000100000100500000000000000000000000000000000000
1866+000000001c00cc0101005000f303000000000000000000000000000000000000
1867+000000000108cd0103000000ef03000000000000090000000000000000000000
1868+000000006e6574207469746c650000001600cd01010050000100500000000000
1869+000000000a0014002c01c800000000000900cd01010050000000000000000000
1870+000000000000000000000000000000001300cd01000100000100500000000000
1871+000000000000000000000000000000001c00cd0101005000f303000000000000
1872+000000000000000000000000000000000108ce0103000000ef03000000000000
1873+090000000000000000000000000000006e6574207469746c650000001600ce01
1874+010050000100500000000000000000000a0014002c01c800000000000900ce01
1875+010050000000000000000000000000000000000000000000000000001300ce01
1876+000100000100500000000000000000000000000000000000000000001c00ce01
1877+01005000f303000000000000000000000000000000000000000000000108cf01
18781878 03000000ef03000000000000090000000000000000000000000000006e657420
1879-7469746c650000001600c401010050000100500000000000000000000a001400
1880-2c01c800000000000900c4010100500000000000000000000000000000000000
1881-00000000000000001300c4010001000001005000000000000000000000000000
1882-00000000000000001c00c40101005000f3030000000000000000000000000000
1883-00000000000000000108c50103000000ef030000000000000900000000000000
1884-00000000000000006e6574207469746c650000001600c5010100500001005000
1885-00000000000000000a0014002c01c800000000000900c5010100500000000000
1886-00000000000000000000000000000000000000001300c5010001000001005000
1887-00000000000000000000000000000000000000001c00c50101005000f3030000
1888-00000000000000000000000000000000000000000108c60103000000ef030000
1879+7469746c650000001600cf01010050000100500000000000000000000a001400
1880+2c01c800000000000900cf010100500000000000000000000000000000000000
1881+00000000000000001300cf010001000001005000000000000000000000000000
1882+00000000000000001c00cf0101005000f3030000000000000000000000000000
1883+00000000000000000108d00103000000ef030000000000000900000000000000
1884+00000000000000006e6574207469746c650000001600d0010100500001005000
1885+00000000000000000a0014002c01c800000000000900d0010100500000000000
1886+00000000000000000000000000000000000000001300d0010001000001005000
1887+00000000000000000000000000000000000000001c00d00101005000f3030000
1888+00000000000000000000000000000000000000000108d10103000000ef030000
18891889 00000000090000000000000000000000000000006e6574207469746c65000000
1890-1600c601010050000100500000000000000000000a0014002c01c80000000000
1891-0900c60101005000000000000000000000000000000000000000000000000000
1892-1300c60100010000010050000000000000000000000000000000000000000000
1893-1c00c60101005000f30300000000000000000000000000000000000000000000
1894-0108c70103000000ef0300000000000009000000000000000000000000000000
1895-6e6574207469746c650000001600c70101005000010050000000000000000000
1896-0a0014002c01c800000000000900c70101005000000000000000000000000000
1897-0000000000000000000000001300c70100010000010050000000000000000000
1898-0000000000000000000000001c00c70101005000f30300000000000000000000
1899-0000000000000000000000000108c80103000000ef0300000000000009000000
1900-0000000000000000000000006e6574207469746c650000001600c80101005000
1901-0100500000000000000000000a0014002c01c800000000000900c80101005000
1902-0000000000000000000000000000000000000000000000001300c80100010000
1903-0100500000000000000000000000000000000000000000001c00c80101005000
1904-f303000000000000000000000000000000000000000000000108c90103000000
1890+1600d101010050000100500000000000000000000a0014002c01c80000000000
1891+0900d10101005000000000000000000000000000000000000000000000000000
1892+1300d10100010000010050000000000000000000000000000000000000000000
1893+1c00d10101005000f30300000000000000000000000000000000000000000000
1894+0108d20103000000ef0300000000000009000000000000000000000000000000
1895+6e6574207469746c650000001600d20101005000010050000000000000000000
1896+0a0014002c01c800000000000900d20101005000000000000000000000000000
1897+0000000000000000000000001300d20100010000010050000000000000000000
1898+0000000000000000000000001c00d20101005000f30300000000000000000000
1899+0000000000000000000000000108d30103000000ef0300000000000009000000
1900+0000000000000000000000006e6574207469746c650000001600d30101005000
1901+0100500000000000000000000a0014002c01c800000000000900d30101005000
1902+0000000000000000000000000000000000000000000000001300d30100010000
1903+0100500000000000000000000000000000000000000000001c00d30101005000
1904+f303000000000000000000000000000000000000000000000108d40103000000
19051905 ef03000000000000090000000000000000000000000000006e6574207469746c
1906-650000001600c901010050000100500000000000000000000a0014002c01c800
1907-000000000900c901010050000000000000000000000000000000000000000000
1908-000000001300c901000100000100500000000000000000000000000000000000
1909-000000001c00c90101005000f303000000000000000000000000000000000000
1910-000000000108ca0103000000ef03000000000000090000000000000000000000
1911-000000006e6574207469746c650000001600ca01010050000100500000000000
1912-000000000a0014002c01c800000000000900ca01010050000000000000000000
1913-000000000000000000000000000000001300ca01000100000100500000000000
1914-000000000000000000000000000000001c00ca0101005000f303000000000000
1915-000000000000000000000000000000000108cb0103000000ef03000000000000
1916-090000000000000000000000000000006e6574207469746c650000001600cb01
1917-010050000100500000000000000000000a0014002c01c800000000000900cb01
1918-010050000000000000000000000000000000000000000000000000001300cb01
1919-000100000100500000000000000000000000000000000000000000001c00cb01
1920-01005000f303000000000000000000000000000000000000000000000108cc01
1906+650000001600d401010050000100500000000000000000000a0014002c01c800
1907+000000000900d401010050000000000000000000000000000000000000000000
1908+000000001300d401000100000100500000000000000000000000000000000000
1909+000000001c00d40101005000f303000000000000000000000000000000000000
1910+000000000108d50103000000ef03000000000000090000000000000000000000
1911+000000006e6574207469746c650000001600d501010050000100500000000000
1912+000000000a0014002c01c800000000000900d501010050000000000000000000
1913+000000000000000000000000000000001300d501000100000100500000000000
1914+000000000000000000000000000000001c00d50101005000f303000000000000
1915+000000000000000000000000000000000108d60103000000ef03000000000000
1916+090000000000000000000000000000006e6574207469746c650000001600d601
1917+010050000100500000000000000000000a0014002c01c800000000000900d601
1918+010050000000000000000000000000000000000000000000000000001300d601
1919+000100000100500000000000000000000000000000000000000000001c00d601
1920+01005000f303000000000000000000000000000000000000000000000108d701
19211921 03000000ef03000000000000090000000000000000000000000000006e657420
1922-7469746c650000001600cc01010050000100500000000000000000000a001400
1923-2c01c800000000000900cc010100500000000000000000000000000000000000
1924-00000000000000001300cc010001000001005000000000000000000000000000
1925-00000000000000001c00cc0101005000f3030000000000000000000000000000
1926-00000000000000000108cd0103000000ef030000000000000900000000000000
1927-00000000000000006e6574207469746c650000001600cd010100500001005000
1928-00000000000000000a0014002c01c800000000000900cd010100500000000000
1929-00000000000000000000000000000000000000001300cd010001000001005000
1930-00000000000000000000000000000000000000001c00cd0101005000f3030000
1931-00000000000000000000000000000000000000000108ce0103000000ef030000
1922+7469746c650000001600d701010050000100500000000000000000000a001400
1923+2c01c800000000000900d7010100500000000000000000000000000000000000
1924+00000000000000001300d7010001000001005000000000000000000000000000
1925+00000000000000001c00d70101005000f3030000000000000000000000000000
1926+00000000000000000108d80103000000ef030000000000000900000000000000
1927+00000000000000006e6574207469746c650000001600d8010100500001005000
1928+00000000000000000a0014002c01c800000000000900d8010100500000000000
1929+00000000000000000000000000000000000000001300d8010001000001005000
1930+00000000000000000000000000000000000000001c00d80101005000f3030000
1931+00000000000000000000000000000000000000000108d90103000000ef030000
19321932 00000000090000000000000000000000000000006e6574207469746c65000000
1933-1600ce01010050000100500000000000000000000a0014002c01c80000000000
1934-0900ce0101005000000000000000000000000000000000000000000000000000
1935-1300ce0100010000010050000000000000000000000000000000000000000000
1936-1c00ce0101005000f30300000000000000000000000000000000000000000000
1937-0108cf0103000000ef0300000000000009000000000000000000000000000000
1938-6e6574207469746c650000001600cf0101005000010050000000000000000000
1939-0a0014002c01c800000000000900cf0101005000000000000000000000000000
1940-0000000000000000000000001300cf0100010000010050000000000000000000
1941-0000000000000000000000001c00cf0101005000f30300000000000000000000
1942-0000000000000000000000000108d00103000000ef0300000000000009000000
1943-0000000000000000000000006e6574207469746c650000001600d00101005000
1944-0100500000000000000000000a0014002c01c800000000000900d00101005000
1945-0000000000000000000000000000000000000000000000001300d00100010000
1946-0100500000000000000000000000000000000000000000001c00d00101005000
1947-f303000000000000000000000000000000000000000000000108d10103000000
1933+1600d901010050000100500000000000000000000a0014002c01c80000000000
1934+0900d90101005000000000000000000000000000000000000000000000000000
1935+1300d90100010000010050000000000000000000000000000000000000000000
1936+1c00d90101005000f30300000000000000000000000000000000000000000000
1937+0108da0103000000ef0300000000000009000000000000000000000000000000
1938+6e6574207469746c650000001600da0101005000010050000000000000000000
1939+0a0014002c01c800000000000900da0101005000000000000000000000000000
1940+0000000000000000000000001300da0100010000010050000000000000000000
1941+0000000000000000000000001c00da0101005000f30300000000000000000000
1942+0000000000000000000000000108db0103000000ef0300000000000009000000
1943+0000000000000000000000006e6574207469746c650000001600db0101005000
1944+0100500000000000000000000a0014002c01c800000000000900db0101005000
1945+0000000000000000000000000000000000000000000000001300db0100010000
1946+0100500000000000000000000000000000000000000000001c00db0101005000
1947+f303000000000000000000000000000000000000000000000108dc0103000000
19481948 ef03000000000000090000000000000000000000000000006e6574207469746c
1949-650000001600d101010050000100500000000000000000000a0014002c01c800
1950-000000000900d101010050000000000000000000000000000000000000000000
1951-000000001300d101000100000100500000000000000000000000000000000000
1952-000000001c00d10101005000f303000000000000000000000000000000000000
1953-000000000108d20103000000ef03000000000000090000000000000000000000
1954-000000006e6574207469746c650000001600d201010050000100500000000000
1955-000000000a0014002c01c800000000000900d201010050000000000000000000
1956-000000000000000000000000000000001300d201000100000100500000000000
1957-000000000000000000000000000000001c00d20101005000f303000000000000
1958-000000000000000000000000000000000108d30103000000ef03000000000000
1959-090000000000000000000000000000006e6574207469746c650000001600d301
1960-010050000100500000000000000000000a0014002c01c800000000000900d301
1961-010050000000000000000000000000000000000000000000000000001300d301
1962-000100000100500000000000000000000000000000000000000000001c00d301
1963-01005000f303000000000000000000000000000000000000000000000108d401
1949+650000001600dc01010050000100500000000000000000000a0014002c01c800
1950+000000000900dc01010050000000000000000000000000000000000000000000
1951+000000001300dc01000100000100500000000000000000000000000000000000
1952+000000001c00dc0101005000f303000000000000000000000000000000000000
1953+000000000108dd0103000000ef03000000000000090000000000000000000000
1954+000000006e6574207469746c650000001600dd01010050000100500000000000
1955+000000000a0014002c01c800000000000900dd01010050000000000000000000
1956+000000000000000000000000000000001300dd01000100000100500000000000
1957+000000000000000000000000000000001c00dd0101005000f303000000000000
1958+000000000000000000000000000000000108de0103000000ef03000000000000
1959+090000000000000000000000000000006e6574207469746c650000001600de01
1960+010050000100500000000000000000000a0014002c01c800000000000900de01
1961+010050000000000000000000000000000000000000000000000000001300de01
1962+000100000100500000000000000000000000000000000000000000001c00de01
1963+01005000f303000000000000000000000000000000000000000000000108df01
19641964 03000000ef03000000000000090000000000000000000000000000006e657420
1965-7469746c650000001600d401010050000100500000000000000000000a001400
1966-2c01c800000000000900d4010100500000000000000000000000000000000000
1967-00000000000000001300d4010001000001005000000000000000000000000000
1968-00000000000000001c00d40101005000f3030000000000000000000000000000
1969-00000000000000000108d50103000000ef030000000000000900000000000000
1970-00000000000000006e6574207469746c650000001600d5010100500001005000
1971-00000000000000000a0014002c01c800000000000900d5010100500000000000
1972-00000000000000000000000000000000000000001300d5010001000001005000
1973-00000000000000000000000000000000000000001c00d50101005000f3030000
1974-00000000000000000000000000000000000000000108d60103000000ef030000
1965+7469746c650000001600df01010050000100500000000000000000000a001400
1966+2c01c800000000000900df010100500000000000000000000000000000000000
1967+00000000000000001300df010001000001005000000000000000000000000000
1968+00000000000000001c00df0101005000f3030000000000000000000000000000
1969+00000000000000000108e00103000000ef030000000000000900000000000000
1970+00000000000000006e6574207469746c650000001600e0010100500001005000
1971+00000000000000000a0014002c01c800000000000900e0010100500000000000
1972+00000000000000000000000000000000000000001300e0010001000001005000
1973+00000000000000000000000000000000000000001c00e00101005000f3030000
1974+00000000000000000000000000000000000000000108e10103000000ef030000
19751975 00000000090000000000000000000000000000006e6574207469746c65000000
1976-1600d601010050000100500000000000000000000a0014002c01c80000000000
1977-0900d60101005000000000000000000000000000000000000000000000000000
1978-1300d60100010000010050000000000000000000000000000000000000000000
1979-1c00d60101005000f30300000000000000000000000000000000000000000000
1980-0108d70103000000ef0300000000000009000000000000000000000000000000
1981-6e6574207469746c650000001600d70101005000010050000000000000000000
1982-0a0014002c01c800000000000900d70101005000000000000000000000000000
1983-0000000000000000000000001300d70100010000010050000000000000000000
1984-0000000000000000000000001c00d70101005000f30300000000000000000000
1985-0000000000000000000000000108d80103000000ef0300000000000009000000
1986-0000000000000000000000006e6574207469746c650000001600d80101005000
1987-0100500000000000000000000a0014002c01c800000000000900d80101005000
1988-0000000000000000000000000000000000000000000000001300d80100010000
1989-0100500000000000000000000000000000000000000000001c00d80101005000
1990-f303000000000000000000000000000000000000000000000108d90103000000
1976+1600e101010050000100500000000000000000000a0014002c01c80000000000
1977+0900e10101005000000000000000000000000000000000000000000000000000
1978+1300e10100010000010050000000000000000000000000000000000000000000
1979+1c00e10101005000f30300000000000000000000000000000000000000000000
1980+0108e20103000000ef0300000000000009000000000000000000000000000000
1981+6e6574207469746c650000001600e20101005000010050000000000000000000
1982+0a0014002c01c800000000000900e20101005000000000000000000000000000
1983+0000000000000000000000001300e20100010000010050000000000000000000
1984+0000000000000000000000001c00e20101005000f30300000000000000000000
1985+0000000000000000000000000108e30103000000ef0300000000000009000000
1986+0000000000000000000000006e6574207469746c650000001600e30101005000
1987+0100500000000000000000000a0014002c01c800000000000900e30101005000
1988+0000000000000000000000000000000000000000000000001300e30100010000
1989+0100500000000000000000000000000000000000000000001c00e30101005000
1990+f303000000000000000000000000000000000000000000000108e40103000000
19911991 ef03000000000000090000000000000000000000000000006e6574207469746c
1992-650000001600d901010050000100500000000000000000000a0014002c01c800
1993-000000000900d901010050000000000000000000000000000000000000000000
1994-000000001300d901000100000100500000000000000000000000000000000000
1995-000000001c00d90101005000f303000000000000000000000000000000000000
1996-000000000108da0103000000ef03000000000000090000000000000000000000
1997-000000006e6574207469746c650000001600da01010050000100500000000000
1998-000000000a0014002c01c800000000000900da01010050000000000000000000
1999-000000000000000000000000000000001300da01000100000100500000000000
2000-000000000000000000000000000000001c00da0101005000f303000000000000
2001-000000000000000000000000000000000108db0103000000ef03000000000000
2002-090000000000000000000000000000006e6574207469746c650000001600db01
2003-010050000100500000000000000000000a0014002c01c800000000000900db01
2004-010050000000000000000000000000000000000000000000000000001300db01
2005-000100000100500000000000000000000000000000000000000000001c00db01
2006-01005000f303000000000000000000000000000000000000000000000108dc01
1992+650000001600e401010050000100500000000000000000000a0014002c01c800
1993+000000000900e401010050000000000000000000000000000000000000000000
1994+000000001300e401000100000100500000000000000000000000000000000000
1995+000000001c00e40101005000f303000000000000000000000000000000000000
1996+000000000108e50103000000ef03000000000000090000000000000000000000
1997+000000006e6574207469746c650000001600e501010050000100500000000000
1998+000000000a0014002c01c800000000000900e501010050000000000000000000
1999+000000000000000000000000000000001300e501000100000100500000000000
2000+000000000000000000000000000000001c00e50101005000f303000000000000
2001+000000000000000000000000000000000108e60103000000ef03000000000000
2002+090000000000000000000000000000006e6574207469746c650000001600e601
2003+010050000100500000000000000000000a0014002c01c800000000000900e601
2004+010050000000000000000000000000000000000000000000000000001300e601
2005+000100000100500000000000000000000000000000000000000000001c00e601
2006+01005000f303000000000000000000000000000000000000000000000108e701
20072007 03000000ef03000000000000090000000000000000000000000000006e657420
2008-7469746c650000001600dc01010050000100500000000000000000000a001400
2009-2c01c800000000000900dc010100500000000000000000000000000000000000
2010-00000000000000001300dc010001000001005000000000000000000000000000
2011-00000000000000001c00dc0101005000f3030000000000000000000000000000
2012-00000000000000000108dd0103000000ef030000000000000900000000000000
2013-00000000000000006e6574207469746c650000001600dd010100500001005000
2014-00000000000000000a0014002c01c800000000000900dd010100500000000000
2015-00000000000000000000000000000000000000001300dd010001000001005000
2016-00000000000000000000000000000000000000001c00dd0101005000f3030000
2017-00000000000000000000000000000000000000000108de0103000000ef030000
2008+7469746c650000001600e701010050000100500000000000000000000a001400
2009+2c01c800000000000900e7010100500000000000000000000000000000000000
2010+00000000000000001300e7010001000001005000000000000000000000000000
2011+00000000000000001c00e70101005000f3030000000000000000000000000000
2012+00000000000000000108e80103000000ef030000000000000900000000000000
2013+00000000000000006e6574207469746c650000001600e8010100500001005000
2014+00000000000000000a0014002c01c800000000000900e8010100500000000000
2015+00000000000000000000000000000000000000001300e8010001000001005000
2016+00000000000000000000000000000000000000001c00e80101005000f3030000
2017+00000000000000000000000000000000000000000108e90103000000ef030000
20182018 00000000090000000000000000000000000000006e6574207469746c65000000
2019-1600de01010050000100500000000000000000000a0014002c01c80000000000
2020-0900de0101005000000000000000000000000000000000000000000000000000
2021-1300de0100010000010050000000000000000000000000000000000000000000
2022-1c00de0101005000f30300000000000000000000000000000000000000000000
2023-0108df0103000000ef0300000000000009000000000000000000000000000000
2024-6e6574207469746c650000001600df0101005000010050000000000000000000
2025-0a0014002c01c800000000000900df0101005000000000000000000000000000
2026-0000000000000000000000001300df0100010000010050000000000000000000
2027-0000000000000000000000001c00df0101005000f30300000000000000000000
2028-0000000000000000000000000108e00103000000ef0300000000000009000000
2029-0000000000000000000000006e6574207469746c650000001600e00101005000
2030-0100500000000000000000000a0014002c01c800000000000900e00101005000
2031-0000000000000000000000000000000000000000000000001300e00100010000
2032-0100500000000000000000000000000000000000000000001c00e00101005000
2033-f303000000000000000000000000000000000000000000000108e10103000000
2019+1600e901010050000100500000000000000000000a0014002c01c80000000000
2020+0900e90101005000000000000000000000000000000000000000000000000000
2021+1300e90100010000010050000000000000000000000000000000000000000000
2022+1c00e90101005000f30300000000000000000000000000000000000000000000
2023+0108ea0103000000ef0300000000000009000000000000000000000000000000
2024+6e6574207469746c650000001600ea0101005000010050000000000000000000
2025+0a0014002c01c800000000000900ea0101005000000000000000000000000000
2026+0000000000000000000000001300ea0100010000010050000000000000000000
2027+0000000000000000000000001c00ea0101005000f30300000000000000000000
2028+0000000000000000000000000108eb0103000000ef0300000000000009000000
2029+0000000000000000000000006e6574207469746c650000001600eb0101005000
2030+0100500000000000000000000a0014002c01c800000000000900eb0101005000
2031+0000000000000000000000000000000000000000000000001300eb0100010000
2032+0100500000000000000000000000000000000000000000001c00eb0101005000
2033+f303000000000000000000000000000000000000000000000108ec0103000000
20342034 ef03000000000000090000000000000000000000000000006e6574207469746c
2035-650000001600e101010050000100500000000000000000000a0014002c01c800
2036-000000000900e101010050000000000000000000000000000000000000000000
2037-000000001300e101000100000100500000000000000000000000000000000000
2038-000000001c00e10101005000f303000000000000000000000000000000000000
2039-000000000108e20103000000ef03000000000000090000000000000000000000
2040-000000006e6574207469746c650000001600e201010050000100500000000000
2041-000000000a0014002c01c800000000000900e201010050000000000000000000
2042-000000000000000000000000000000001300e201000100000100500000000000
2043-000000000000000000000000000000001c00e20101005000f303000000000000
2044-000000000000000000000000000000000108e30103000000ef03000000000000
2045-090000000000000000000000000000006e6574207469746c650000001600e301
2046-010050000100500000000000000000000a0014002c01c800000000000900e301
2047-010050000000000000000000000000000000000000000000000000001300e301
2048-000100000100500000000000000000000000000000000000000000001c00e301
2049-01005000f303000000000000000000000000000000000000000000000108e401
2035+650000001600ec01010050000100500000000000000000000a0014002c01c800
2036+000000000900ec01010050000000000000000000000000000000000000000000
2037+000000001300ec01000100000100500000000000000000000000000000000000
2038+000000001c00ec0101005000f303000000000000000000000000000000000000
2039+000000000108ed0103000000ef03000000000000090000000000000000000000
2040+000000006e6574207469746c650000001600ed01010050000100500000000000
2041+000000000a0014002c01c800000000000900ed01010050000000000000000000
2042+000000000000000000000000000000001300ed01000100000100500000000000
2043+000000000000000000000000000000001c00ed0101005000f303000000000000
2044+000000000000000000000000000000000108ee0103000000ef03000000000000
2045+090000000000000000000000000000006e6574207469746c650000001600ee01
2046+010050000100500000000000000000000a0014002c01c800000000000900ee01
2047+010050000000000000000000000000000000000000000000000000001300ee01
2048+000100000100500000000000000000000000000000000000000000001c00ee01
2049+01005000f303000000000000000000000000000000000000000000000108ef01
20502050 03000000ef03000000000000090000000000000000000000000000006e657420
2051-7469746c650000001600e401010050000100500000000000000000000a001400
2052-2c01c800000000000900e4010100500000000000000000000000000000000000
2053-00000000000000001300e4010001000001005000000000000000000000000000
2054-00000000000000001c00e40101005000f3030000000000000000000000000000
2055-00000000000000000108e50103000000ef030000000000000900000000000000
2056-00000000000000006e6574207469746c650000001600e5010100500001005000
2057-00000000000000000a0014002c01c800000000000900e5010100500000000000
2058-00000000000000000000000000000000000000001300e5010001000001005000
2059-00000000000000000000000000000000000000001c00e50101005000f3030000
2060-00000000000000000000000000000000000000000108e60103000000ef030000
2051+7469746c650000001600ef01010050000100500000000000000000000a001400
2052+2c01c800000000000900ef010100500000000000000000000000000000000000
2053+00000000000000001300ef010001000001005000000000000000000000000000
2054+00000000000000001c00ef0101005000f3030000000000000000000000000000
2055+00000000000000000108f00103000000ef030000000000000900000000000000
2056+00000000000000006e6574207469746c650000001600f0010100500001005000
2057+00000000000000000a0014002c01c800000000000900f0010100500000000000
2058+00000000000000000000000000000000000000001300f0010001000001005000
2059+00000000000000000000000000000000000000001c00f00101005000f3030000
2060+00000000000000000000000000000000000000000108f10103000000ef030000
20612061 00000000090000000000000000000000000000006e6574207469746c65000000
2062-1600e601010050000100500000000000000000000a0014002c01c80000000000
2063-0900e60101005000000000000000000000000000000000000000000000000000
2064-1300e60100010000010050000000000000000000000000000000000000000000
2065-1c00e60101005000f30300000000000000000000000000000000000000000000
2066-0108e70103000000ef0300000000000009000000000000000000000000000000
2067-6e6574207469746c650000001600e70101005000010050000000000000000000
2068-0a0014002c01c800000000000900e70101005000000000000000000000000000
2069-0000000000000000000000001300e70100010000010050000000000000000000
2070-0000000000000000000000001c00e70101005000f30300000000000000000000
2071-0000000000000000000000000108e80103000000ef0300000000000009000000
2072-0000000000000000000000006e6574207469746c650000001600e80101005000
2073-0100500000000000000000000a0014002c01c800000000000900e80101005000
2074-0000000000000000000000000000000000000000000000001300e80100010000
2075-0100500000000000000000000000000000000000000000001c00e80101005000
2076-f303000000000000000000000000000000000000000000000108e90103000000
2062+1600f101010050000100500000000000000000000a0014002c01c80000000000
2063+0900f10101005000000000000000000000000000000000000000000000000000
2064+1300f10100010000010050000000000000000000000000000000000000000000
2065+1c00f10101005000f30300000000000000000000000000000000000000000000
2066+0108f20103000000ef0300000000000009000000000000000000000000000000
2067+6e6574207469746c650000001600f20101005000010050000000000000000000
2068+0a0014002c01c800000000000900f20101005000000000000000000000000000
2069+0000000000000000000000001300f20100010000010050000000000000000000
2070+0000000000000000000000001c00f20101005000f30300000000000000000000
2071+0000000000000000000000000108f30103000000ef0300000000000009000000
2072+0000000000000000000000006e6574207469746c650000001600f30101005000
2073+0100500000000000000000000a0014002c01c800000000000900f30101005000
2074+0000000000000000000000000000000000000000000000001300f30100010000
2075+0100500000000000000000000000000000000000000000001c00f30101005000
2076+f303000000000000000000000000000000000000000000000108f40103000000
20772077 ef03000000000000090000000000000000000000000000006e6574207469746c
2078-650000001600e901010050000100500000000000000000000a0014002c01c800
2079-000000000900e901010050000000000000000000000000000000000000000000
2080-000000001300e901000100000100500000000000000000000000000000000000
2081-000000001c00e90101005000f303000000000000000000000000000000000000
2082-000000000108ea0103000000ef03000000000000090000000000000000000000
2083-000000006e6574207469746c650000001600ea01010050000100500000000000
2084-000000000a0014002c01c800000000000900ea01010050000000000000000000
2085-000000000000000000000000000000001300ea01000100000100500000000000
2086-000000000000000000000000000000001c00ea0101005000f303000000000000
2087-000000000000000000000000000000000108eb0103000000ef03000000000000
2088-090000000000000000000000000000006e6574207469746c650000001600eb01
2089-010050000100500000000000000000000a0014002c01c800000000000900eb01
2090-010050000000000000000000000000000000000000000000000000001300eb01
2091-000100000100500000000000000000000000000000000000000000001c00eb01
2092-01005000f303000000000000000000000000000000000000000000000108ec01
2078+650000001600f401010050000100500000000000000000000a0014002c01c800
2079+000000000900f401010050000000000000000000000000000000000000000000
2080+000000001300f401000100000100500000000000000000000000000000000000
2081+000000001c00f40101005000f303000000000000000000000000000000000000
2082+000000000108f50103000000ef03000000000000090000000000000000000000
2083+000000006e6574207469746c650000001600f501010050000100500000000000
2084+000000000a0014002c01c800000000000900f501010050000000000000000000
2085+000000000000000000000000000000001300f501000100000100500000000000
2086+000000000000000000000000000000001c00f50101005000f303000000000000
2087+000000000000000000000000000000000108f60103000000ef03000000000000
2088+090000000000000000000000000000006e6574207469746c650000001600f601
2089+010050000100500000000000000000000a0014002c01c800000000000900f601
2090+010050000000000000000000000000000000000000000000000000001300f601
2091+000100000100500000000000000000000000000000000000000000001c00f601
2092+01005000f303000000000000000000000000000000000000000000000108f701
20932093 03000000ef03000000000000090000000000000000000000000000006e657420
2094-7469746c650000001600ec01010050000100500000000000000000000a001400
2095-2c01c800000000000900ec010100500000000000000000000000000000000000
2096-00000000000000001300ec010001000001005000000000000000000000000000
2097-00000000000000001c00ec0101005000f3030000000000000000000000000000
2098-00000000000000000108ed0103000000ef030000000000000900000000000000
2099-00000000000000006e6574207469746c650000001600ed010100500001005000
2100-00000000000000000a0014002c01c800000000000900ed010100500000000000
2101-00000000000000000000000000000000000000001300ed010001000001005000
2102-00000000000000000000000000000000000000001c00ed0101005000f3030000
2103-00000000000000000000000000000000000000000108ee0103000000ef030000
2094+7469746c650000001600f701010050000100500000000000000000000a001400
2095+2c01c800000000000900f7010100500000000000000000000000000000000000
2096+00000000000000001300f7010001000001005000000000000000000000000000
2097+00000000000000001c00f70101005000f3030000000000000000000000000000
2098+00000000000000000108f80103000000ef030000000000000900000000000000
2099+00000000000000006e6574207469746c650000001600f8010100500001005000
2100+00000000000000000a0014002c01c800000000000900f8010100500000000000
2101+00000000000000000000000000000000000000001300f8010001000001005000
2102+00000000000000000000000000000000000000001c00f80101005000f3030000
2103+00000000000000000000000000000000000000000108f90103000000ef030000
21042104 00000000090000000000000000000000000000006e6574207469746c65000000
2105-1600ee01010050000100500000000000000000000a0014002c01c80000000000
2106-0900ee0101005000000000000000000000000000000000000000000000000000
2107-1300ee0100010000010050000000000000000000000000000000000000000000
2108-1c00ee0101005000f30300000000000000000000000000000000000000000000
2109-0108ef0103000000ef0300000000000009000000000000000000000000000000
2110-6e6574207469746c650000001600ef0101005000010050000000000000000000
2111-0a0014002c01c800000000000900ef0101005000000000000000000000000000
2112-0000000000000000000000001300ef0100010000010050000000000000000000
2113-0000000000000000000000001c00ef0101005000f30300000000000000000000
2114-0000000000000000000000000108f00103000000ef0300000000000009000000
2115-0000000000000000000000006e6574207469746c650000001600f00101005000
2116-0100500000000000000000000a0014002c01c800000000000900f00101005000
2117-0000000000000000000000000000000000000000000000001300f00100010000
2118-0100500000000000000000000000000000000000000000001c00f00101005000
2119-f303000000000000000000000000000000000000000000000108f10103000000
2105+1600f901010050000100500000000000000000000a0014002c01c80000000000
2106+0900f90101005000000000000000000000000000000000000000000000000000
2107+1300f90100010000010050000000000000000000000000000000000000000000
2108+1c00f90101005000f30300000000000000000000000000000000000000000000
2109+0108fa0103000000ef0300000000000009000000000000000000000000000000
2110+6e6574207469746c650000001600fa0101005000010050000000000000000000
2111+0a0014002c01c800000000000900fa0101005000000000000000000000000000
2112+0000000000000000000000001300fa0100010000010050000000000000000000
2113+0000000000000000000000001c00fa0101005000f30300000000000000000000
2114+0000000000000000000000000108fb0103000000ef0300000000000009000000
2115+0000000000000000000000006e6574207469746c650000001600fb0101005000
2116+0100500000000000000000000a0014002c01c800000000000900fb0101005000
2117+0000000000000000000000000000000000000000000000001300fb0100010000
2118+0100500000000000000000000000000000000000000000001c00fb0101005000
2119+f303000000000000000000000000000000000000000000000108fc0103000000
21202120 ef03000000000000090000000000000000000000000000006e6574207469746c
2121-650000001600f101010050000100500000000000000000000a0014002c01c800
2122-000000000900f101010050000000000000000000000000000000000000000000
2123-000000001300f101000100000100500000000000000000000000000000000000
2124-000000001c00f10101005000f303000000000000000000000000000000000000
2125-000000000108f20103000000ef03000000000000090000000000000000000000
2126-000000006e6574207469746c650000001600f201010050000100500000000000
2127-000000000a0014002c01c800000000000900f201010050000000000000000000
2128-000000000000000000000000000000001300f201000100000100500000000000
2129-000000000000000000000000000000001c00f20101005000f303000000000000
2130-000000000000000000000000000000000108f30103000000ef03000000000000
2131-090000000000000000000000000000006e6574207469746c650000001600f301
2132-010050000100500000000000000000000a0014002c01c800000000000900f301
2133-010050000000000000000000000000000000000000000000000000001300f301
2134-000100000100500000000000000000000000000000000000000000001c00f301
2135-01005000f303000000000000000000000000000000000000000000000108f401
2121+650000001600fc01010050000100500000000000000000000a0014002c01c800
2122+000000000900fc01010050000000000000000000000000000000000000000000
2123+000000001300fc01000100000100500000000000000000000000000000000000
2124+000000001c00fc0101005000f303000000000000000000000000000000000000
2125+000000000108fd0103000000ef03000000000000090000000000000000000000
2126+000000006e6574207469746c650000001600fd01010050000100500000000000
2127+000000000a0014002c01c800000000000900fd01010050000000000000000000
2128+000000000000000000000000000000001300fd01000100000100500000000000
2129+000000000000000000000000000000001c00fd0101005000f303000000000000
2130+000000000000000000000000000000000108fe0103000000ef03000000000000
2131+090000000000000000000000000000006e6574207469746c650000001600fe01
2132+010050000100500000000000000000000a0014002c01c800000000000900fe01
2133+010050000000000000000000000000000000000000000000000000001300fe01
2134+000100000100500000000000000000000000000000000000000000001c00fe01
2135+01005000f303000000000000000000000000000000000000000000000108ff01
21362136 03000000ef03000000000000090000000000000000000000000000006e657420
2137-7469746c650000001600f401010050000100500000000000000000000a001400
2138-2c01c800000000000900f4010100500000000000000000000000000000000000
2139-00000000000000001300f4010001000001005000000000000000000000000000
2140-00000000000000001c00f40101005000f3030000000000000000000000000000
2141-00000000000000000108f50103000000ef030000000000000900000000000000
2142-00000000000000006e6574207469746c650000001600f5010100500001005000
2143-00000000000000000a0014002c01c800000000000900f5010100500000000000
2144-00000000000000000000000000000000000000001300f5010001000001005000
2145-00000000000000000000000000000000000000001c00f50101005000f3030000
2146-00000000000000000000000000000000000000000108f60103000000ef030000
2137+7469746c650000001600ff01010050000100500000000000000000000a001400
2138+2c01c800000000000900ff010100500000000000000000000000000000000000
2139+00000000000000001300ff010001000001005000000000000000000000000000
2140+00000000000000001c00ff0101005000f3030000000000000000000000000000
2141+00000000000000000108000203000000ef030000000000000900000000000000
2142+00000000000000006e6574207469746c65000000160000020100500001005000
2143+00000000000000000a0014002c01c80000000000090000020100500000000000
2144+0000000000000000000000000000000000000000130000020001000001005000
2145+00000000000000000000000000000000000000001c00000201005000f3030000
2146+00000000000000000000000000000000000000000108010203000000ef030000
21472147 00000000090000000000000000000000000000006e6574207469746c65000000
2148-1600f601010050000100500000000000000000000a0014002c01c80000000000
2149-0900f60101005000000000000000000000000000000000000000000000000000
2150-1300f60100010000010050000000000000000000000000000000000000000000
2148+16000102010050000100500000000000000000000a0014002c01c80000000000
2149+0900010201005000000000000000000000000000000000000000000000000000
2150+1300010200010000010050000000000000000000000000000000000000000000
M internal/adapters/wayland/xwm/xpeer_test.go +16 -3
@@ -365,12 +365,25 @@ func (p *xpeer) answer(r xpeerReq, body []byte) {
365365 delete(p.props[binary.LittleEndian.Uint32(body)], binary.LittleEndian.Uint32(body[4:]))
366366 case r.major == opGetProperty:
367367 win, prop := binary.LittleEndian.Uint32(body), binary.LittleEndian.Uint32(body[4:])
368+ off, length := int(binary.LittleEndian.Uint32(body[12:]))*4, int(binary.LittleEndian.Uint32(body[16:]))*4
368369 v, ok := p.props[win][prop]
369- b := make([]byte, 24+(len(v.data)+3)&^3)
370+ data, after := v.data, 0
371+ if off > len(data) {
372+ off = len(data)
373+ }
374+ data = data[off:]
375+ if len(data) > length {
376+ data, after = data[:length], len(data)-length
377+ }
378+ b := make([]byte, 24+(len(data)+3)&^3)
370379 if ok && v.format != 0 {
371380 binary.LittleEndian.PutUint32(b[0:], v.typ)
372- binary.LittleEndian.PutUint32(b[8:], uint32(len(v.data)/(int(v.format)/8)))
373- copy(b[24:], v.data)
381+ binary.LittleEndian.PutUint32(b[4:], uint32(after))
382+ binary.LittleEndian.PutUint32(b[8:], uint32(len(data)/(int(v.format)/8)))
383+ copy(b[24:], data)
384+ if r.raw[1] != 0 && after == 0 { // delete
385+ delete(p.props[win], prop)
386+ }
374387 }
375388 p.reply(v.format, b)
376389 case r.major == opChangeWindowAttributes:
M internal/adapters/wayland/xwm/xwm.go +30 -8
@@ -14,6 +14,7 @@ import (
1414 "fmt"
1515 "io"
1616 "os"
17+ "time"
1718
1819 "bnema.dev/xturbo"
1920 "bnema.dev/xturbo/composite"
@@ -49,18 +50,22 @@ const unpairedCap = 64
4950
5051 // XWM manages the windows of one Xwayland. Display goroutine only, after Boot.
5152 type XWM struct {
52- conn *xturbo.Conn
53- log zerowrap.Logger
54- root uint32
55- wmWin uint32
56- atoms [atomCount]uint32
57- tab *table
58- h xturbo.Handler
59- stats Stats
53+ conn *xturbo.Conn
54+ log zerowrap.Logger
55+ root uint32
56+ wmWin uint32
57+ selWin uint32 // selection bridge window (selection.go)
58+ sel selBridge
59+ atoms [atomCount]uint32
60+ tab *table
61+ h xturbo.Handler
62+ stats Stats
6063
6164 // attachment
6265 host host
6366 src fdSource
67+ addFD func(fd int, onReadable, onWritable func()) (fdSource, error) // display fd source seam
68+ after func(d time.Duration, fn func()) (cancel func())
6469 post func(func())
6570 flushFn func()
6671
@@ -90,6 +95,7 @@ func newXWM(conn *xturbo.Conn, log zerowrap.Logger) *XWM {
9095 x := &XWM{conn: conn, log: log, root: conn.Root(), tab: newTable(initialSlots), space: new(Space)}
9196 x.h = xturbo.Handler{OnEvent: x.onEvent, OnReply: x.onReply, OnError: x.onError}
9297 x.fit()
98+ x.initSelection()
9399 return x
94100 }
95101
@@ -227,6 +233,11 @@ func (x *XWM) boot() error {
227233 return fmt.Errorf("xwm: allocate window id: %w", err)
228234 }
229235 x.wmWin = xid
236+ if ext.Info(xturbo.ExtXFixes).Present {
237+ if x.selWin, err = conn.NewXID(); err != nil {
238+ return fmt.Errorf("xwm: allocate window id: %w", err)
239+ }
240+ }
230241
231242 b := conn.Buf()
232243 x.expect(composite.QueryVersion(b, 0, 4), kindVersion, versionComposite, 0)
@@ -267,6 +278,8 @@ func (x *XWM) boot() error {
267278 xproto.SetSelectionOwner(b, xproto.Window(x.wmWin), xproto.Atom(x.atoms[atomWMS0]), 0)
268279 xproto.SetSelectionOwner(b, xproto.Window(x.wmWin), xproto.Atom(x.atoms[atomNetWMCMS0]), 0)
269280
281+ x.bootSelection(root)
282+
270283 supported := [...]int{
271284 atomNetWMState, atomNetActiveWindow, atomNetWMStateFocused,
272285 atomNetWMStateModal, atomNetWMStateFullscreen, atomNetClientList,
@@ -303,6 +316,13 @@ func (x *XWM) boot() error {
303316 // Attach registers the X socket with the display and hands the windows found
304317 // at boot to h. Display goroutine only.
305318 func (x *XWM) Attach(d *server.Display, h host) error {
319+ x.addFD = func(fd int, r, w func()) (fdSource, error) {
320+ s, err := d.AddFDRW(fd, r, w)
321+ if err != nil {
322+ return nil, err
323+ }
324+ return s, nil
325+ }
306326 src, err := d.AddFDRW(x.conn.Fd(), x.onReadable, x.onWritable)
307327 if err != nil {
308328 return fmt.Errorf("xwm: watch X socket: %w", err)
@@ -314,6 +334,7 @@ func (x *XWM) Attach(d *server.Display, h host) error {
314334 // attach is Attach over its seams: the event source and the display's Post.
315335 func (x *XWM) attach(src fdSource, h host, post func(func())) {
316336 x.src, x.host, x.post = src, h, post
337+ x.after = h.After
317338 x.flushFn = func() {
318339 x.posted = false
319340 x.flush()
@@ -343,6 +364,7 @@ func (x *XWM) Close() {
343364 return
344365 }
345366 x.closed = true
367+ x.selClose()
346368 s := x.stats
347369 x.log.Info().Uint64("events", s.Events).Uint64("replies", s.Replies).Uint64("errors", s.Errors).
348370 Uint64("unattributed", s.Unattributed).Uint64("stale", s.Stale).Uint64("ring_full", s.RingFull).
M internal/adapters/wayland/xwm/xwm_test.go +1 -1
@@ -74,7 +74,7 @@ func TestBootRequests(t *testing.T) {
7474 redirect = i
7575 require.EqualValues(t, peerRoot, r.u32(4))
7676 require.EqualValues(t, 1, r.raw[8], "manual")
77- case r.major == opCreateWindow:
77+ case r.major == opCreateWindow && r.u32(4) == wm:
7878 create = i
7979 require.Equal(t, wm, r.u32(4))
8080 case r.major == opSetSelectionOwner && r.u32(8) == p.atom("WM_S0"):
A internal/adapters/wayland/xwm_selection_mock_test.go +143 -0
@@ -0,0 +1,143 @@
1+// Code generated by mockery; DO NOT EDIT.
2+// github.com/vektra/mockery
3+// template: testify
4+
5+package wayland
6+
7+import (
8+ mock "github.com/stretchr/testify/mock"
9+)
10+
11+// newMockxwmSelection creates a new instance of mockxwmSelection. It also registers a testing interface on the mock and a cleanup function to assert the mocks expectations.
12+// The first argument is typically a *testing.T value.
13+func newMockxwmSelection(t interface {
14+ mock.TestingT
15+ Cleanup(func())
16+}) *mockxwmSelection {
17+ if helper, ok := t.(interface{ Helper() }); ok {
18+ helper.Helper()
19+ }
20+
21+ mock := &mockxwmSelection{}
22+ mock.Mock.Test(t)
23+
24+ t.Cleanup(func() {
25+ if helper, ok := t.(interface{ Helper() }); ok {
26+ helper.Helper()
27+ }
28+ mock.AssertExpectations(t)
29+ })
30+
31+ return mock
32+}
33+
34+// mockxwmSelection is an autogenerated mock type for the xwmSelection type
35+type mockxwmSelection struct {
36+ mock.Mock
37+}
38+
39+type mockxwmSelection_Expecter struct {
40+ mock *mock.Mock
41+}
42+
43+func (_m *mockxwmSelection) EXPECT() *mockxwmSelection_Expecter {
44+ return &mockxwmSelection_Expecter{mock: &_m.Mock}
45+}
46+
47+// SelectionReceive provides a mock function for the type mockxwmSelection
48+func (_mock *mockxwmSelection) SelectionReceive(kind int, mime string, fd int) {
49+ _mock.Called(kind, mime, fd)
50+ return
51+}
52+
53+// mockxwmSelection_SelectionReceive_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'SelectionReceive'
54+type mockxwmSelection_SelectionReceive_Call struct {
55+ *mock.Call
56+}
57+
58+// SelectionReceive is a helper method to define mock.On call
59+// - kind int
60+// - mime string
61+// - fd int
62+func (_e *mockxwmSelection_Expecter) SelectionReceive(kind any, mime any, fd any) *mockxwmSelection_SelectionReceive_Call {
63+ return &mockxwmSelection_SelectionReceive_Call{Call: _e.mock.On("SelectionReceive", kind, mime, fd)}
64+}
65+
66+func (_c *mockxwmSelection_SelectionReceive_Call) Run(run func(kind int, mime string, fd int)) *mockxwmSelection_SelectionReceive_Call {
67+ _c.Call.Run(func(args mock.Arguments) {
68+ var arg0 int
69+ if args[0] != nil {
70+ arg0 = args[0].(int)
71+ }
72+ var arg1 string
73+ if args[1] != nil {
74+ arg1 = args[1].(string)
75+ }
76+ var arg2 int
77+ if args[2] != nil {
78+ arg2 = args[2].(int)
79+ }
80+ run(
81+ arg0,
82+ arg1,
83+ arg2,
84+ )
85+ })
86+ return _c
87+}
88+
89+func (_c *mockxwmSelection_SelectionReceive_Call) Return() *mockxwmSelection_SelectionReceive_Call {
90+ _c.Call.Return()
91+ return _c
92+}
93+
94+func (_c *mockxwmSelection_SelectionReceive_Call) RunAndReturn(run func(kind int, mime string, fd int)) *mockxwmSelection_SelectionReceive_Call {
95+ _c.Run(run)
96+ return _c
97+}
98+
99+// WaylandSelection provides a mock function for the type mockxwmSelection
100+func (_mock *mockxwmSelection) WaylandSelection(kind int, mimes []string) {
101+ _mock.Called(kind, mimes)
102+ return
103+}
104+
105+// mockxwmSelection_WaylandSelection_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'WaylandSelection'
106+type mockxwmSelection_WaylandSelection_Call struct {
107+ *mock.Call
108+}
109+
110+// WaylandSelection is a helper method to define mock.On call
111+// - kind int
112+// - mimes []string
113+func (_e *mockxwmSelection_Expecter) WaylandSelection(kind any, mimes any) *mockxwmSelection_WaylandSelection_Call {
114+ return &mockxwmSelection_WaylandSelection_Call{Call: _e.mock.On("WaylandSelection", kind, mimes)}
115+}
116+
117+func (_c *mockxwmSelection_WaylandSelection_Call) Run(run func(kind int, mimes []string)) *mockxwmSelection_WaylandSelection_Call {
118+ _c.Call.Run(func(args mock.Arguments) {
119+ var arg0 int
120+ if args[0] != nil {
121+ arg0 = args[0].(int)
122+ }
123+ var arg1 []string
124+ if args[1] != nil {
125+ arg1 = args[1].([]string)
126+ }
127+ run(
128+ arg0,
129+ arg1,
130+ )
131+ })
132+ return _c
133+}
134+
135+func (_c *mockxwmSelection_WaylandSelection_Call) Return() *mockxwmSelection_WaylandSelection_Call {
136+ _c.Call.Return()
137+ return _c
138+}
139+
140+func (_c *mockxwmSelection_WaylandSelection_Call) RunAndReturn(run func(kind int, mimes []string)) *mockxwmSelection_WaylandSelection_Call {
141+ _c.Run(run)
142+ return _c
143+}

Keyboard shortcuts

Single-key shortcuts are on. ctrl k and esc work whatever this says.

ctrl k :
go to a section, branch, tag, file or repository
?
this list
j k
move the row cursor down / up
enter
open the row under the cursor; on Files, a directory opens or closes in place
↑ ↓ ← → home end
in the file tree (focus on a row): previous / next row, close / open a directory or go to its parent / first entry, first / last row. They never open a file
l h
on Files: open a directory or a file / close a directory or go up to its parent, then to the parent page. Elsewhere: into the side panel (on a merge request, its files) / back to the content; there j k move between its controls
g g G
first / last row
/
filter the list; on Files, find a file anywhere in the repository (esc clears, enter opens the best match)
b
switch branch or tag
g s g f g c g b g m g i g r g a
tabs: summary, files, commits, branches & tags, merge requests, issues, releases, actions (when available)
g h
home
w
wide mode: use the whole width of the screen, or not (remembered)
y
copy a permalink pinned to the commit
d u x
diff: split / unified / collapse or expand all
e E
diff: the whole file in view / every file, with the lines the hunks hide
n
merge request: next note in the diff
esc
close a dialog, leave a field

Branches 26

Tags 10

↑↓ moveenter openesc close