1c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
25f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)#line 1 "../../src/hb-buffer-deserialize-json.rl"
3c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)/*
4c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * Copyright © 2013  Google, Inc.
5c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) *
6c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) *  This is part of HarfBuzz, a text shaping library.
7c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) *
8c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * Permission is hereby granted, without written agreement and without
9c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * license or royalty fees, to use, copy, modify, and distribute this
10c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * software and its documentation for any purpose, provided that the
11c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * above copyright notice and the following two paragraphs appear in
12c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * all copies of this software.
13c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) *
14c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR
15c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
16c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN
17c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
18c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * DAMAGE.
19c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) *
20c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
21c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
22c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * FITNESS FOR A PARTICULAR PURPOSE.  THE SOFTWARE PROVIDED HEREUNDER IS
23c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO
24c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
25c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) *
26c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * Google Author(s): Behdad Esfahbod
27c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) */
28c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
29c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#ifndef HB_BUFFER_DESERIALIZE_JSON_HH
30c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#define HB_BUFFER_DESERIALIZE_JSON_HH
31c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
32c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#include "hb-private.hh"
33c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
34c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
35c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#line 36 "hb-buffer-deserialize-json.hh.tmp"
36c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)static const unsigned char _deserialize_json_trans_keys[] = {
37c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	0u, 0u, 9u, 123u, 9u, 34u, 97u, 103u, 120u, 121u, 34u, 34u, 9u, 58u, 9u, 57u,
38c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	48u, 57u, 9u, 125u, 9u, 125u, 9u, 125u, 34u, 34u, 9u, 58u, 9u, 57u, 48u, 57u,
39c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	9u, 125u, 9u, 125u, 108u, 108u, 34u, 34u, 9u, 58u, 9u, 57u, 9u, 125u, 9u, 125u,
40c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	120u, 121u, 34u, 34u, 9u, 58u, 9u, 57u, 48u, 57u, 9u, 125u, 9u, 125u, 34u, 34u,
41c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	9u, 58u, 9u, 57u, 48u, 57u, 9u, 125u, 9u, 125u, 34u, 34u, 9u, 58u, 9u, 57u,
42c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	65u, 122u, 34u, 122u, 9u, 125u, 9u, 125u, 9u, 93u, 9u, 123u, 0u, 0u, 0
43c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)};
44c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
45c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)static const char _deserialize_json_key_spans[] = {
46c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	0, 115, 26, 7, 2, 1, 50, 49,
47c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	10, 117, 117, 117, 1, 50, 49, 10,
48c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	117, 117, 1, 1, 50, 49, 117, 117,
49c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	2, 1, 50, 49, 10, 117, 117, 1,
50c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	50, 49, 10, 117, 117, 1, 50, 49,
51c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	58, 89, 117, 117, 85, 115, 0
52c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)};
53c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
54c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)static const short _deserialize_json_index_offsets[] = {
55c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	0, 0, 116, 143, 151, 154, 156, 207,
56c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	257, 268, 386, 504, 622, 624, 675, 725,
57c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	736, 854, 972, 974, 976, 1027, 1077, 1195,
58c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1313, 1316, 1318, 1369, 1419, 1430, 1548, 1666,
59c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1668, 1719, 1769, 1780, 1898, 2016, 2018, 2069,
60c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	2119, 2178, 2268, 2386, 2504, 2590, 2706
61c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)};
62c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
63c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)static const char _deserialize_json_indicies[] = {
64c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	0, 0, 0, 0, 0, 1, 1,
65c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
66c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
67c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	0, 1, 1, 1, 1, 1, 1, 1,
68c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
69c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
70c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
71c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
72c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
73c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
74c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
75c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
76c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
77c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
78c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 2, 1, 3, 3, 3,
79c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	3, 3, 1, 1, 1, 1, 1, 1,
80c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
81c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 3, 1, 4, 1,
82c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	5, 1, 6, 7, 1, 1, 8, 1,
83c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	9, 10, 1, 11, 1, 11, 11, 11,
84c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	11, 11, 1, 1, 1, 1, 1, 1,
85c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
86c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 11, 1, 1, 1,
87c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
88c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
89c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 12, 1,
90c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	12, 12, 12, 12, 12, 1, 1, 1,
91c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
92c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 12,
93c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
94c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 13, 1, 1, 14,
95c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	15, 15, 15, 15, 15, 15, 15, 15,
96c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	15, 1, 16, 17, 17, 17, 17, 17,
97c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	17, 17, 17, 17, 1, 18, 18, 18,
98c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	18, 18, 1, 1, 1, 1, 1, 1,
99c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
100c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 18, 1, 1, 1,
101c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
102c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	19, 1, 1, 1, 1, 1, 1, 1,
103c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
104c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
105c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
106c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
107c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
108c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
109c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
110c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
111c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
112c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 20, 1, 21, 21, 21, 21, 21,
113c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
114c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
115c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 21, 1, 1, 1, 1, 1,
116c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 3, 1,
117c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
118c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
119c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
120c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
121c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
122c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
123c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
124c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
125c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
126c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 22,
127c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 18, 18, 18, 18, 18, 1, 1,
128c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
129c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
130c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	18, 1, 1, 1, 1, 1, 1, 1,
131c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 19, 1, 1, 1,
132c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	17, 17, 17, 17, 17, 17, 17, 17,
133c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	17, 17, 1, 1, 1, 1, 1, 1,
134c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
135c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
136c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
137c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
138c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
139c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
140c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
141c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 20, 1, 23,
142c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 23, 23, 23, 23, 23, 1, 1,
143c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
144c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
145c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	23, 1, 1, 1, 1, 1, 1, 1,
146c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
147c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
148c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 24, 1, 24, 24, 24, 24,
149c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	24, 1, 1, 1, 1, 1, 1, 1,
150c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
151c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 24, 1, 1, 1, 1,
152c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
153c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	25, 1, 1, 26, 27, 27, 27, 27,
154c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	27, 27, 27, 27, 27, 1, 28, 29,
155c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	29, 29, 29, 29, 29, 29, 29, 29,
156c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 30, 30, 30, 30, 30, 1, 1,
157c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
158c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
159c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	30, 1, 1, 1, 1, 1, 1, 1,
160c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 31, 1, 1, 1,
161c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
162c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
163c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
164c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
165c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
166c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
167c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
168c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
169c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
170c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 32, 1, 30,
171c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	30, 30, 30, 30, 1, 1, 1, 1,
172c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
173c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 30, 1,
174c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
175c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 31, 1, 1, 1, 29, 29,
176c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	29, 29, 29, 29, 29, 29, 29, 29,
177c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
178c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
179c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
180c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
181c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
182c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
183c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
184c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
185c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 32, 1, 33, 1, 34,
186c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 34, 34, 34, 34, 34, 1, 1,
187c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
188c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
189c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	34, 1, 1, 1, 1, 1, 1, 1,
190c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
191c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
192c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 35, 1, 35, 35, 35, 35,
193c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	35, 1, 1, 1, 1, 1, 1, 1,
194c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
195c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 35, 1, 1, 1, 1,
196c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
197c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 36, 37, 37, 37, 37,
198c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	37, 37, 37, 37, 37, 1, 38, 38,
199c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	38, 38, 38, 1, 1, 1, 1, 1,
200c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
201c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 38, 1, 1,
202c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
203c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 39, 1, 1, 1, 1, 1, 1,
204c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
205c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
206c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
207c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
208c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
209c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
210c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
211c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
212c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
213c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 40, 1, 38, 38, 38, 38,
214c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	38, 1, 1, 1, 1, 1, 1, 1,
215c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
216c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 38, 1, 1, 1, 1,
217c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 39,
218c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 41, 41, 41, 41, 41,
219c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	41, 41, 41, 41, 41, 1, 1, 1,
220c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
221c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
222c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
223c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
224c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
225c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
226c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
227c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
228c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	40, 1, 42, 43, 1, 44, 1, 44,
229c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	44, 44, 44, 44, 1, 1, 1, 1,
230c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
231c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 44, 1,
232c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
233c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
234c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
235c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	45, 1, 45, 45, 45, 45, 45, 1,
236c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
237c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
238c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 45, 1, 1, 1, 1, 1, 1,
239c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 46, 1,
240c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 47, 48, 48, 48, 48, 48, 48,
241c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	48, 48, 48, 1, 49, 50, 50, 50,
242c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	50, 50, 50, 50, 50, 50, 1, 51,
243c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	51, 51, 51, 51, 1, 1, 1, 1,
244c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
245c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 51, 1,
246c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
247c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 52, 1, 1, 1, 1, 1,
248c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
249c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
250c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
251c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
252c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
253c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
254c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
255c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
256c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
257c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 53, 1, 51, 51, 51,
258c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	51, 51, 1, 1, 1, 1, 1, 1,
259c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
260c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 51, 1, 1, 1,
261c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
262c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	52, 1, 1, 1, 50, 50, 50, 50,
263c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	50, 50, 50, 50, 50, 50, 1, 1,
264c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
265c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
266c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
267c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
268c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
269c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
270c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
271c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
272c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 53, 1, 54, 1, 54, 54, 54,
273c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	54, 54, 1, 1, 1, 1, 1, 1,
274c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
275c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 54, 1, 1, 1,
276c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
277c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
278c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 55, 1,
279c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	55, 55, 55, 55, 55, 1, 1, 1,
280c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
281c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 55,
282c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
283c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 56, 1, 1, 57,
284c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	58, 58, 58, 58, 58, 58, 58, 58,
285c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	58, 1, 59, 60, 60, 60, 60, 60,
286c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	60, 60, 60, 60, 1, 61, 61, 61,
287c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	61, 61, 1, 1, 1, 1, 1, 1,
288c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
289c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 61, 1, 1, 1,
290c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
291c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	62, 1, 1, 1, 1, 1, 1, 1,
292c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
293c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
294c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
295c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
296c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
297c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
298c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
299c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
300c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
301c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 63, 1, 61, 61, 61, 61, 61,
302c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
303c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
304c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 61, 1, 1, 1, 1, 1,
305c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 62, 1,
306c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 60, 60, 60, 60, 60, 60,
307c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	60, 60, 60, 60, 1, 1, 1, 1,
308c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
309c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
310c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
311c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
312c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
313c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
314c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
315c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 63,
316c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 64, 1, 64, 64, 64, 64, 64,
317c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
318c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
319c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 64, 1, 1, 1, 1, 1,
320c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
321c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
322c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 65, 1, 65, 65,
323c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	65, 65, 65, 1, 1, 1, 1, 1,
324c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
325c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 65, 1, 66,
326c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
327c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 67, 68, 68,
328c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	68, 68, 68, 68, 68, 68, 68, 1,
329c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	69, 69, 69, 69, 69, 69, 69, 69,
330c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	69, 69, 69, 69, 69, 69, 69, 69,
331c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	69, 69, 69, 69, 69, 69, 69, 69,
332c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	69, 69, 1, 1, 1, 1, 1, 1,
333c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	69, 69, 69, 69, 69, 69, 69, 69,
334c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	69, 69, 69, 69, 69, 69, 69, 69,
335c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	69, 69, 69, 69, 69, 69, 69, 69,
336c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	69, 69, 1, 70, 1, 1, 1, 1,
337c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 71, 71,
338c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 71, 71, 71, 71, 71, 71, 71,
339c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	71, 71, 71, 1, 1, 1, 1, 1,
340c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 71, 71, 71, 71, 71, 71,
341c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	71, 71, 71, 71, 71, 71, 71, 71,
342c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	71, 71, 71, 71, 71, 71, 71, 71,
343c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	71, 71, 71, 71, 1, 1, 1, 1,
344c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	71, 1, 71, 71, 71, 71, 71, 71,
345c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	71, 71, 71, 71, 71, 71, 71, 71,
346c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	71, 71, 71, 71, 71, 71, 71, 71,
347c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	71, 71, 71, 71, 1, 72, 72, 72,
348c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	72, 72, 1, 1, 1, 1, 1, 1,
349c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
350c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 72, 1, 1, 1,
351c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
352c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	73, 1, 1, 1, 1, 1, 1, 1,
353c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
354c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
355c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
356c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
357c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
358c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
359c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
360c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
361c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
362c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 74, 1, 72, 72, 72, 72, 72,
363c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
364c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
365c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 72, 1, 1, 1, 1, 1,
366c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 73, 1,
367c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 75, 75, 75, 75, 75, 75,
368c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	75, 75, 75, 75, 1, 1, 1, 1,
369c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
370c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
371c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
372c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
373c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
374c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
375c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
376c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 74,
377c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 76, 76, 76, 76, 76, 1, 1,
378c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
379c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
380c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	76, 1, 1, 1, 1, 1, 1, 1,
381c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 77, 1, 1, 1,
382c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
383c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
384c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
385c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
386c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
387c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 78, 1, 0,
388c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	0, 0, 0, 0, 1, 1, 1, 1,
389c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
390c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 0, 1,
391c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
392c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
393c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
394c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
395c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
396c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
397c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
398c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
399c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
400c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
401c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 1, 1, 1, 1, 1, 1, 1,
402c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 2, 1, 1, 0
403c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)};
404c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
405c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)static const char _deserialize_json_trans_targs[] = {
406c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	1, 0, 2, 2, 3, 4, 18, 24,
407c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	37, 5, 12, 6, 7, 8, 9, 11,
408c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	9, 11, 10, 2, 44, 10, 44, 13,
409c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	14, 15, 16, 17, 16, 17, 10, 2,
410c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	44, 19, 20, 21, 22, 23, 10, 2,
411c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	44, 23, 25, 31, 26, 27, 28, 29,
412c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	30, 29, 30, 10, 2, 44, 32, 33,
413c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	34, 35, 36, 35, 36, 10, 2, 44,
414c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	38, 39, 40, 42, 43, 41, 10, 41,
415c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	10, 2, 44, 43, 44, 45, 46
416c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)};
417c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
418c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)static const char _deserialize_json_trans_actions[] = {
419c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	0, 0, 1, 0, 0, 0, 0, 0,
420c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	0, 0, 0, 0, 0, 2, 2, 2,
421c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	0, 0, 3, 3, 4, 0, 5, 0,
422c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	0, 2, 2, 2, 0, 0, 6, 6,
423c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	7, 0, 0, 0, 2, 2, 8, 8,
424c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	9, 0, 0, 0, 0, 0, 2, 2,
425c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	2, 0, 0, 10, 10, 11, 0, 0,
426c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	2, 2, 2, 0, 0, 12, 12, 13,
427c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	0, 0, 0, 2, 2, 2, 14, 0,
428c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	15, 15, 16, 0, 0, 0, 0
429c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)};
430c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
431c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)static const int deserialize_json_start = 1;
432c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)static const int deserialize_json_first_final = 44;
433c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)static const int deserialize_json_error = 0;
434c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
435c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)static const int deserialize_json_en_main = 1;
436c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
437c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
4385f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)#line 97 "../../src/hb-buffer-deserialize-json.rl"
439c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
440c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
441c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)static hb_bool_t
442c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)_hb_buffer_deserialize_glyphs_json (hb_buffer_t *buffer,
443c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)				    const char *buf,
444c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)				    unsigned int buf_len,
445c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)				    const char **end_ptr,
446c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)				    hb_font_t *font)
447c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles){
448c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)  const char *p = buf, *pe = buf + buf_len;
449c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
450c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)  /* Ensure we have positions. */
451c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)  (void) hb_buffer_get_glyph_positions (buffer, NULL);
452c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
453c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)  while (p < pe && ISSPACE (*p))
454c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    p++;
455c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)  if (p < pe && *p == (buffer->len ? ',' : '['))
456c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)  {
457c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    *end_ptr = ++p;
458c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)  }
459c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
460c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)  const char *tok = NULL;
461c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)  int cs;
462c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)  hb_glyph_info_t info;
463c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)  hb_glyph_position_t pos;
464c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
465c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#line 466 "hb-buffer-deserialize-json.hh.tmp"
466c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	{
467c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	cs = deserialize_json_start;
468c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	}
469c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
470c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#line 471 "hb-buffer-deserialize-json.hh.tmp"
471c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	{
472c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	int _slen;
473c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	int _trans;
474c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	const unsigned char *_keys;
475c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	const char *_inds;
476c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	if ( p == pe )
477c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)		goto _test_eof;
478c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	if ( cs == 0 )
479c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)		goto _out;
480c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)_resume:
481c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	_keys = _deserialize_json_trans_keys + (cs<<1);
482c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	_inds = _deserialize_json_indicies + _deserialize_json_index_offsets[cs];
483c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
484c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	_slen = _deserialize_json_key_spans[cs];
485c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	_trans = _inds[ _slen > 0 && _keys[0] <=(*p) &&
486c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)		(*p) <= _keys[1] ?
487c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)		(*p) - _keys[0] : _slen ];
488c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
489c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	cs = _deserialize_json_trans_targs[_trans];
490c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
491c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	if ( _deserialize_json_trans_actions[_trans] == 0 )
492c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)		goto _again;
493c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
494c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	switch ( _deserialize_json_trans_actions[_trans] ) {
495c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	case 1:
4965f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)#line 38 "../../src/hb-buffer-deserialize-json.rl"
497c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	{
498c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	memset (&info, 0, sizeof (info));
499c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	memset (&pos , 0, sizeof (pos ));
500c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)}
501c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	break;
502c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	case 5:
5035f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)#line 43 "../../src/hb-buffer-deserialize-json.rl"
504c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	{
505c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	buffer->add_info (info);
506c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	if (buffer->in_error)
507c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	  return false;
508c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	buffer->pos[buffer->len - 1] = pos;
509c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	*end_ptr = p;
510c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)}
511c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	break;
512c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	case 2:
5135f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)#line 51 "../../src/hb-buffer-deserialize-json.rl"
514c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	{
515c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	tok = p;
516c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)}
517c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	break;
518c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	case 14:
5195f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)#line 55 "../../src/hb-buffer-deserialize-json.rl"
520c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	{
521c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	if (!hb_font_glyph_from_string (font,
522c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)					tok, p - tok,
523c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)					&info.codepoint))
524c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	  return false;
525c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)}
526c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	break;
527c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	case 15:
5285f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)#line 62 "../../src/hb-buffer-deserialize-json.rl"
529c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	{ if (!parse_uint (tok, p, &info.codepoint)) return false; }
530c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	break;
531c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	case 8:
5325f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)#line 63 "../../src/hb-buffer-deserialize-json.rl"
533c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	{ if (!parse_uint (tok, p, &info.cluster )) return false; }
534c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	break;
535c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	case 10:
5365f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)#line 64 "../../src/hb-buffer-deserialize-json.rl"
537c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	{ if (!parse_int  (tok, p, &pos.x_offset )) return false; }
538c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	break;
539c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	case 12:
5405f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)#line 65 "../../src/hb-buffer-deserialize-json.rl"
541c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	{ if (!parse_int  (tok, p, &pos.y_offset )) return false; }
542c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	break;
543c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	case 3:
5445f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)#line 66 "../../src/hb-buffer-deserialize-json.rl"
545c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	{ if (!parse_int  (tok, p, &pos.x_advance)) return false; }
546c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	break;
547c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	case 6:
5485f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)#line 67 "../../src/hb-buffer-deserialize-json.rl"
549c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	{ if (!parse_int  (tok, p, &pos.y_advance)) return false; }
550c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	break;
551c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	case 16:
5525f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)#line 62 "../../src/hb-buffer-deserialize-json.rl"
553c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	{ if (!parse_uint (tok, p, &info.codepoint)) return false; }
5545f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)#line 43 "../../src/hb-buffer-deserialize-json.rl"
555c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	{
556c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	buffer->add_info (info);
557c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	if (buffer->in_error)
558c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	  return false;
559c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	buffer->pos[buffer->len - 1] = pos;
560c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	*end_ptr = p;
561c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)}
562c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	break;
563c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	case 9:
5645f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)#line 63 "../../src/hb-buffer-deserialize-json.rl"
565c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	{ if (!parse_uint (tok, p, &info.cluster )) return false; }
5665f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)#line 43 "../../src/hb-buffer-deserialize-json.rl"
567c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	{
568c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	buffer->add_info (info);
569c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	if (buffer->in_error)
570c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	  return false;
571c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	buffer->pos[buffer->len - 1] = pos;
572c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	*end_ptr = p;
573c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)}
574c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	break;
575c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	case 11:
5765f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)#line 64 "../../src/hb-buffer-deserialize-json.rl"
577c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	{ if (!parse_int  (tok, p, &pos.x_offset )) return false; }
5785f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)#line 43 "../../src/hb-buffer-deserialize-json.rl"
579c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	{
580c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	buffer->add_info (info);
581c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	if (buffer->in_error)
582c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	  return false;
583c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	buffer->pos[buffer->len - 1] = pos;
584c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	*end_ptr = p;
585c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)}
586c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	break;
587c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	case 13:
5885f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)#line 65 "../../src/hb-buffer-deserialize-json.rl"
589c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	{ if (!parse_int  (tok, p, &pos.y_offset )) return false; }
5905f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)#line 43 "../../src/hb-buffer-deserialize-json.rl"
591c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	{
592c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	buffer->add_info (info);
593c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	if (buffer->in_error)
594c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	  return false;
595c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	buffer->pos[buffer->len - 1] = pos;
596c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	*end_ptr = p;
597c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)}
598c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	break;
599c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	case 4:
6005f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)#line 66 "../../src/hb-buffer-deserialize-json.rl"
601c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	{ if (!parse_int  (tok, p, &pos.x_advance)) return false; }
6025f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)#line 43 "../../src/hb-buffer-deserialize-json.rl"
603c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	{
604c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	buffer->add_info (info);
605c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	if (buffer->in_error)
606c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	  return false;
607c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	buffer->pos[buffer->len - 1] = pos;
608c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	*end_ptr = p;
609c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)}
610c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	break;
611c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	case 7:
6125f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)#line 67 "../../src/hb-buffer-deserialize-json.rl"
613c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	{ if (!parse_int  (tok, p, &pos.y_advance)) return false; }
6145f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)#line 43 "../../src/hb-buffer-deserialize-json.rl"
615c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	{
616c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	buffer->add_info (info);
617c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	if (buffer->in_error)
618c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	  return false;
619c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	buffer->pos[buffer->len - 1] = pos;
620c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	*end_ptr = p;
621c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)}
622c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	break;
623c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#line 624 "hb-buffer-deserialize-json.hh.tmp"
624c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	}
625c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
626c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)_again:
627c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	if ( cs == 0 )
628c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)		goto _out;
629c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	if ( ++p != pe )
630c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)		goto _resume;
631c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	_test_eof: {}
632c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	_out: {}
633c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	}
634c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
6355f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)#line 125 "../../src/hb-buffer-deserialize-json.rl"
636c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
637c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
638c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)  *end_ptr = p;
639c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
640c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)  return p == pe && *(p-1) != ']';
641c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)}
642c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
643c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#endif /* HB_BUFFER_DESERIALIZE_JSON_HH */
644