balkon 0.3.0.0 → 1.0.0.0
raw patch · 104 files changed
+10068/−4453 lines, 104 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
- Data.Text.ParagraphLayout: Absolute :: Int32 -> LineHeight
- Data.Text.ParagraphLayout: Fragment :: Rect Int32 -> (Int32, Int32) -> [(GlyphInfo, GlyphPos)] -> Fragment
- Data.Text.ParagraphLayout: Normal :: LineHeight
- Data.Text.ParagraphLayout: Paragraph :: Array -> Int -> [Span] -> ParagraphOptions -> Paragraph
- Data.Text.ParagraphLayout: ParagraphLayout :: Rect Int32 -> [SpanLayout] -> ParagraphLayout
- Data.Text.ParagraphLayout: ParagraphOptions :: Font -> LineHeight -> Int32 -> ParagraphOptions
- Data.Text.ParagraphLayout: Span :: Int -> SpanOptions -> Span
- Data.Text.ParagraphLayout: SpanLayout :: [Fragment] -> SpanLayout
- Data.Text.ParagraphLayout: SpanOptions :: String -> SpanOptions
- Data.Text.ParagraphLayout: [fragmentGlyphs] :: Fragment -> [(GlyphInfo, GlyphPos)]
- Data.Text.ParagraphLayout: [fragmentPen] :: Fragment -> (Int32, Int32)
- Data.Text.ParagraphLayout: [fragmentRect] :: Fragment -> Rect Int32
- Data.Text.ParagraphLayout: [paragraphFont] :: ParagraphOptions -> Font
- Data.Text.ParagraphLayout: [paragraphLineHeight] :: ParagraphOptions -> LineHeight
- Data.Text.ParagraphLayout: [paragraphMaxWidth] :: ParagraphOptions -> Int32
- Data.Text.ParagraphLayout: [paragraphRect] :: ParagraphLayout -> Rect Int32
- Data.Text.ParagraphLayout: [spanLanguage] :: SpanOptions -> String
- Data.Text.ParagraphLayout: [spanLayouts] :: ParagraphLayout -> [SpanLayout]
- Data.Text.ParagraphLayout: [spanLength] :: Span -> Int
- Data.Text.ParagraphLayout: [spanOptions] :: Span -> SpanOptions
- Data.Text.ParagraphLayout: data Fragment
- Data.Text.ParagraphLayout: data LineHeight
- Data.Text.ParagraphLayout: data Paragraph
- Data.Text.ParagraphLayout: data ParagraphLayout
- Data.Text.ParagraphLayout: data ParagraphOptions
- Data.Text.ParagraphLayout: data Span
- Data.Text.ParagraphLayout: data SpanLayout
- Data.Text.ParagraphLayout: data SpanOptions
- Data.Text.ParagraphLayout: layoutPlain :: Paragraph -> ParagraphLayout
- Data.Text.ParagraphLayout: paragraphSpanBounds :: Paragraph -> NonEmpty Int
- Data.Text.ParagraphLayout: paragraphSpanTexts :: Paragraph -> [Text]
- Data.Text.ParagraphLayout: paragraphText :: Paragraph -> Text
+ Data.Text.ParagraphLayout.Plain: Absolute :: Int32 -> LineHeight
+ Data.Text.ParagraphLayout.Plain: AncestorBox :: d -> BoxEdge -> BoxEdge -> BoxEdge -> BoxEdge -> AncestorBox d
+ Data.Text.ParagraphLayout.Plain: Fragment :: d -> Int -> [AncestorBox d] -> Rect Int32 -> (Int32, Int32) -> [(GlyphInfo, GlyphPos)] -> Fragment d
+ Data.Text.ParagraphLayout.Plain: NoEdge :: BoxEdge
+ Data.Text.ParagraphLayout.Plain: Normal :: LineHeight
+ Data.Text.ParagraphLayout.Plain: Paragraph :: Array -> Int -> [Span d] -> ParagraphOptions -> Paragraph d
+ Data.Text.ParagraphLayout.Plain: ParagraphLayout :: Rect Int32 -> [SpanLayout d] -> ParagraphLayout d
+ Data.Text.ParagraphLayout.Plain: SpacedEdge :: Int32 -> BoxEdge
+ Data.Text.ParagraphLayout.Plain: Span :: d -> Int -> SpanOptions -> Span d
+ Data.Text.ParagraphLayout.Plain: SpanLayout :: [Fragment d] -> SpanLayout d
+ Data.Text.ParagraphLayout.Plain: [boxEndEdge] :: AncestorBox d -> BoxEdge
+ Data.Text.ParagraphLayout.Plain: [boxLeftEdge] :: AncestorBox d -> BoxEdge
+ Data.Text.ParagraphLayout.Plain: [boxRightEdge] :: AncestorBox d -> BoxEdge
+ Data.Text.ParagraphLayout.Plain: [boxStartEdge] :: AncestorBox d -> BoxEdge
+ Data.Text.ParagraphLayout.Plain: [boxUserData] :: AncestorBox d -> d
+ Data.Text.ParagraphLayout.Plain: [fragmentAncestorBoxes] :: Fragment d -> [AncestorBox d]
+ Data.Text.ParagraphLayout.Plain: [fragmentGlyphs] :: Fragment d -> [(GlyphInfo, GlyphPos)]
+ Data.Text.ParagraphLayout.Plain: [fragmentLine] :: Fragment d -> Int
+ Data.Text.ParagraphLayout.Plain: [fragmentPen] :: Fragment d -> (Int32, Int32)
+ Data.Text.ParagraphLayout.Plain: [fragmentRect] :: Fragment d -> Rect Int32
+ Data.Text.ParagraphLayout.Plain: [fragmentUserData] :: Fragment d -> d
+ Data.Text.ParagraphLayout.Plain: [paragraphRect] :: ParagraphLayout d -> Rect Int32
+ Data.Text.ParagraphLayout.Plain: [spanLayouts] :: ParagraphLayout d -> [SpanLayout d]
+ Data.Text.ParagraphLayout.Plain: [spanLength] :: Span d -> Int
+ Data.Text.ParagraphLayout.Plain: [spanOptions] :: Span d -> SpanOptions
+ Data.Text.ParagraphLayout.Plain: [spanUserData] :: Span d -> d
+ Data.Text.ParagraphLayout.Plain: data AncestorBox d
+ Data.Text.ParagraphLayout.Plain: data BoxEdge
+ Data.Text.ParagraphLayout.Plain: data Fragment d
+ Data.Text.ParagraphLayout.Plain: data LineHeight
+ Data.Text.ParagraphLayout.Plain: data Paragraph d
+ Data.Text.ParagraphLayout.Plain: data ParagraphLayout d
+ Data.Text.ParagraphLayout.Plain: data ParagraphOptions
+ Data.Text.ParagraphLayout.Plain: data Span d
+ Data.Text.ParagraphLayout.Plain: data SpanLayout d
+ Data.Text.ParagraphLayout.Plain: data SpanOptions
+ Data.Text.ParagraphLayout.Plain: defaultParagraphOptions :: ParagraphOptions
+ Data.Text.ParagraphLayout.Plain: defaultSpanOptions :: SpanOptions
+ Data.Text.ParagraphLayout.Plain: layoutPlain :: Paragraph d -> ParagraphLayout d
+ Data.Text.ParagraphLayout.Plain: paragraphFont :: ParagraphOptions -> Font
+ Data.Text.ParagraphLayout.Plain: paragraphLineHeight :: ParagraphOptions -> LineHeight
+ Data.Text.ParagraphLayout.Plain: paragraphMaxWidth :: ParagraphOptions -> Int32
+ Data.Text.ParagraphLayout.Plain: paragraphSpanBounds :: Paragraph d -> NonEmpty Int
+ Data.Text.ParagraphLayout.Plain: paragraphSpanTexts :: Paragraph d -> [Text]
+ Data.Text.ParagraphLayout.Plain: paragraphText :: Paragraph d -> Text
+ Data.Text.ParagraphLayout.Plain: spanLanguage :: SpanOptions -> String
+ Data.Text.ParagraphLayout.Rich: Absolute :: Int32 -> LineHeight
+ Data.Text.ParagraphLayout.Rich: AncestorBox :: d -> BoxEdge -> BoxEdge -> BoxEdge -> BoxEdge -> AncestorBox d
+ Data.Text.ParagraphLayout.Rich: Box :: [InnerNode t d] -> TextOptions -> Box t d
+ Data.Text.ParagraphLayout.Rich: BoxSpacingLeftRight :: Int32 -> Int32 -> BoxSpacing
+ Data.Text.ParagraphLayout.Rich: Fragment :: d -> Int -> [AncestorBox d] -> Rect Int32 -> (Int32, Int32) -> [(GlyphInfo, GlyphPos)] -> Fragment d
+ Data.Text.ParagraphLayout.Rich: InlineBox :: d -> Box t d -> BoxOptions -> InnerNode t d
+ Data.Text.ParagraphLayout.Rich: NoEdge :: BoxEdge
+ Data.Text.ParagraphLayout.Rich: Normal :: LineHeight
+ Data.Text.ParagraphLayout.Rich: Paragraph :: Array -> Int -> RootNode Int d -> ParagraphOptions -> Paragraph d
+ Data.Text.ParagraphLayout.Rich: ParagraphLayout :: Rect Int32 -> [Fragment d] -> ParagraphLayout d
+ Data.Text.ParagraphLayout.Rich: RootBox :: Box t d -> RootNode t d
+ Data.Text.ParagraphLayout.Rich: SpacedEdge :: Int32 -> BoxEdge
+ Data.Text.ParagraphLayout.Rich: TextSequence :: d -> t -> InnerNode t d
+ Data.Text.ParagraphLayout.Rich: [boxEndEdge] :: AncestorBox d -> BoxEdge
+ Data.Text.ParagraphLayout.Rich: [boxLeftEdge] :: AncestorBox d -> BoxEdge
+ Data.Text.ParagraphLayout.Rich: [boxRightEdge] :: AncestorBox d -> BoxEdge
+ Data.Text.ParagraphLayout.Rich: [boxStartEdge] :: AncestorBox d -> BoxEdge
+ Data.Text.ParagraphLayout.Rich: [boxUserData] :: AncestorBox d -> d
+ Data.Text.ParagraphLayout.Rich: [fragmentAncestorBoxes] :: Fragment d -> [AncestorBox d]
+ Data.Text.ParagraphLayout.Rich: [fragmentGlyphs] :: Fragment d -> [(GlyphInfo, GlyphPos)]
+ Data.Text.ParagraphLayout.Rich: [fragmentLine] :: Fragment d -> Int
+ Data.Text.ParagraphLayout.Rich: [fragmentPen] :: Fragment d -> (Int32, Int32)
+ Data.Text.ParagraphLayout.Rich: [fragmentRect] :: Fragment d -> Rect Int32
+ Data.Text.ParagraphLayout.Rich: [fragmentUserData] :: Fragment d -> d
+ Data.Text.ParagraphLayout.Rich: [paragraphFragments] :: ParagraphLayout d -> [Fragment d]
+ Data.Text.ParagraphLayout.Rich: [paragraphRect] :: ParagraphLayout d -> Rect Int32
+ Data.Text.ParagraphLayout.Rich: boxSpacing :: BoxOptions -> BoxSpacing
+ Data.Text.ParagraphLayout.Rich: constructParagraph :: Text -> RootNode Text d -> Text -> ParagraphOptions -> Paragraph d
+ Data.Text.ParagraphLayout.Rich: data AncestorBox d
+ Data.Text.ParagraphLayout.Rich: data Box t d
+ Data.Text.ParagraphLayout.Rich: data BoxEdge
+ Data.Text.ParagraphLayout.Rich: data BoxOptions
+ Data.Text.ParagraphLayout.Rich: data BoxSpacing
+ Data.Text.ParagraphLayout.Rich: data Fragment d
+ Data.Text.ParagraphLayout.Rich: data InnerNode t d
+ Data.Text.ParagraphLayout.Rich: data LineHeight
+ Data.Text.ParagraphLayout.Rich: data Paragraph d
+ Data.Text.ParagraphLayout.Rich: data ParagraphLayout d
+ Data.Text.ParagraphLayout.Rich: data ParagraphOptions
+ Data.Text.ParagraphLayout.Rich: data RootNode t d
+ Data.Text.ParagraphLayout.Rich: data TextOptions
+ Data.Text.ParagraphLayout.Rich: defaultBoxOptions :: BoxOptions
+ Data.Text.ParagraphLayout.Rich: defaultParagraphOptions :: ParagraphOptions
+ Data.Text.ParagraphLayout.Rich: defaultTextOptions :: Direction -> TextOptions
+ Data.Text.ParagraphLayout.Rich: fragmentSpacedRect :: Fragment d -> Rect Int32
+ Data.Text.ParagraphLayout.Rich: layoutRich :: Paragraph d -> ParagraphLayout d
+ Data.Text.ParagraphLayout.Rich: paragraphLineHeight :: ParagraphOptions -> LineHeight
+ Data.Text.ParagraphLayout.Rich: paragraphMaxWidth :: ParagraphOptions -> Int32
+ Data.Text.ParagraphLayout.Rich: paragraphSpanBounds :: Paragraph d -> NonEmpty Int
+ Data.Text.ParagraphLayout.Rich: paragraphSpanTexts :: Paragraph d -> [Text]
+ Data.Text.ParagraphLayout.Rich: paragraphText :: Paragraph d -> Text
+ Data.Text.ParagraphLayout.Rich: textDirection :: TextOptions -> Direction
+ Data.Text.ParagraphLayout.Rich: textFont :: TextOptions -> Font
+ Data.Text.ParagraphLayout.Rich: textLanguage :: TextOptions -> String
+ Data.Text.ParagraphLayout.Rich: textLineHeight :: TextOptions -> LineHeight
- Data.Text.ParagraphLayout.ParagraphConstruction: (>|) :: (SpanOptions, String) -> String -> (Text, [Span])
+ Data.Text.ParagraphLayout.ParagraphConstruction: (>|) :: (SpanOptions, String) -> String -> (Text, [Span ()])
- Data.Text.ParagraphLayout.ParagraphConstruction: (>|<) :: (SpanOptions, String) -> (Text, [Span]) -> (Text, [Span])
+ Data.Text.ParagraphLayout.ParagraphConstruction: (>|<) :: (SpanOptions, String) -> (Text, [Span ()]) -> (Text, [Span ()])
- Data.Text.ParagraphLayout.ParagraphConstruction: (|<) :: String -> (Text, [Span]) -> ParagraphOptions -> Paragraph
+ Data.Text.ParagraphLayout.ParagraphConstruction: (|<) :: String -> (Text, [Span ()]) -> ParagraphOptions -> Paragraph ()
- Data.Text.ParagraphLayout.ParagraphConstruction: (|<>|) :: String -> String -> ParagraphOptions -> Paragraph
+ Data.Text.ParagraphLayout.ParagraphConstruction: (|<>|) :: String -> String -> ParagraphOptions -> Paragraph ()
Files
- .golden/arabicFiller20em/golden +0/−192
- .golden/czechHelloParagraph/golden +0/−16
- .golden/czechHelloParagraphNarrow/golden +0/−19
- .golden/czechHelloParagraphUltraNarrow/golden +0/−25
- .golden/devanagariAccentParagraph/golden +0/−6
- .golden/devanagariParagraph/golden +0/−27
- .golden/devanagariPrefixedAccentParagraph/golden +0/−5
- .golden/hardBreaksLTRParagraph/golden +0/−57
- .golden/hardBreaksRTLParagraph/golden +0/−58
- .golden/ligatureParagraph/golden +0/−13
- .golden/ligatureParagraphBreak1/golden +0/−16
- .golden/ligatureParagraphBreak2/golden +0/−16
- .golden/lineHeightLarger/golden +0/−5
- .golden/lineHeightNormal/golden +0/−5
- .golden/lineHeightSmaller/golden +0/−5
- .golden/loremIpsum100em/golden +0/−447
- .golden/loremIpsum20em/golden +0/−447
- .golden/loremIpsum20emPaginated/golden +0/−456
- .golden/manySpacesParagraph/golden +0/−31
- .golden/mixedLanguageLTRParagraph/golden +0/−20
- .golden/mixedScriptWordsParagraph/golden +0/−76
- .golden/paginatedParagraphLayout/loremIpsum20em.golden +576/−0
- .golden/paginatedParagraphLayout/spannedArabicFiller20em.golden +420/−0
- .golden/paginatedRichParagraphLayout/loremIpsum20em.golden +562/−0
- .golden/paragraphLayout/arabicFiller20em.golden +235/−0
- .golden/paragraphLayout/czechHello.golden +29/−0
- .golden/paragraphLayout/czechHelloParagraphNarrow.golden +72/−0
- .golden/paragraphLayout/czechHelloParagraphUltraNarrow.golden +138/−0
- .golden/paragraphLayout/devanagari.golden +40/−0
- .golden/paragraphLayout/devanagariAccent.golden +19/−0
- .golden/paragraphLayout/devanagariPrefixedAccent.golden +18/−0
- .golden/paragraphLayout/hardBreaksLTR.golden +149/−0
- .golden/paragraphLayout/hardBreaksRTL.golden +150/−0
- .golden/paragraphLayout/ligature.golden +26/−0
- .golden/paragraphLayout/ligatureParagraphBreak1.golden +49/−0
- .golden/paragraphLayout/ligatureParagraphBreak2.golden +49/−0
- .golden/paragraphLayout/lineHeightLarger.golden +18/−0
- .golden/paragraphLayout/lineHeightNormal.golden +18/−0
- .golden/paragraphLayout/lineHeightSmaller.golden +18/−0
- .golden/paragraphLayout/loremIpsum100em.golden +480/−0
- .golden/paragraphLayout/loremIpsum20em.golden +560/−0
- .golden/paragraphLayout/manySpaces.golden +74/−0
- .golden/paragraphLayout/mixedLanguageLTR.golden +45/−0
- .golden/paragraphLayout/mixedScriptWords.golden +309/−0
- .golden/paragraphLayout/spannedArabicFiller20em.golden +378/−0
- .golden/paragraphLayout/spannedLoremIpsum20em.golden +838/−0
- .golden/richParagraphLayout/hardBoxBreakLTR.golden +69/−0
- .golden/richParagraphLayout/hardBoxBreakRTL.golden +69/−0
- .golden/richParagraphLayout/loremIpsum20em.golden +548/−0
- .golden/richParagraphLayout/mixedScript.golden +127/−0
- .golden/richParagraphLayout/mixedScriptWrap.golden +149/−0
- .golden/richParagraphLayout/mixedSizes.golden +80/−0
- .golden/richParagraphLayout/nestedBoxes.golden +69/−0
- .golden/shapedRuns/spannedLoremIpsum20em.fontInfo +1/−0
- .golden/shapedRuns/spannedLoremIpsum20em.golden +492/−0
- .golden/shapedRuns/spannedLoremIpsum20em/fontInfo +0/−1
- .golden/shapedRuns/spannedLoremIpsum20em/golden +0/−493
- .golden/spannedArabicFiller20em/golden +0/−213
- .golden/spannedArabicFiller20emPaginated/golden +0/−229
- .golden/spannedLoremIpsum20em/golden +0/−489
- CHANGELOG.md +35/−0
- TESTING.md +5/−5
- balkon.cabal +34/−34
- lib/Data/Text/ParagraphLayout.hs +6/−26
- lib/Data/Text/ParagraphLayout/ParagraphConstruction.hs +5/−3
- lib/Data/Text/ParagraphLayout/Plain.hs +62/−0
- lib/Data/Text/ParagraphLayout/Rich.hs +76/−0
- src/Data/Text/ParagraphLayout/Internal/AncestorBox.hs +91/−0
- src/Data/Text/ParagraphLayout/Internal/ApplyBoxes.hs +147/−0
- src/Data/Text/ParagraphLayout/Internal/BoxOptions.hs +52/−0
- src/Data/Text/ParagraphLayout/Internal/Fragment.hs +46/−8
- src/Data/Text/ParagraphLayout/Internal/Layout.hs +357/−0
- src/Data/Text/ParagraphLayout/Internal/Paginable.hs +26/−3
- src/Data/Text/ParagraphLayout/Internal/ParagraphConstruction.hs +9/−7
- src/Data/Text/ParagraphLayout/Internal/ParagraphExtents.hs +26/−0
- src/Data/Text/ParagraphLayout/Internal/ParagraphLine.hs +69/−35
- src/Data/Text/ParagraphLayout/Internal/ParagraphOptions.hs +16/−3
- src/Data/Text/ParagraphLayout/Internal/Plain.hs +59/−299
- src/Data/Text/ParagraphLayout/Internal/Plain/Paragraph.hs +5/−5
- src/Data/Text/ParagraphLayout/Internal/Plain/ParagraphLayout.hs +20/−30
- src/Data/Text/ParagraphLayout/Internal/ProtoLine.hs +76/−0
- src/Data/Text/ParagraphLayout/Internal/ResolvedBox.hs +72/−0
- src/Data/Text/ParagraphLayout/Internal/ResolvedSpan.hs +10/−43
- src/Data/Text/ParagraphLayout/Internal/Rich.hs +76/−0
- src/Data/Text/ParagraphLayout/Internal/Rich/Paragraph.hs +112/−0
- src/Data/Text/ParagraphLayout/Internal/Rich/ParagraphLayout.hs +70/−0
- src/Data/Text/ParagraphLayout/Internal/Run.hs +1/−1
- src/Data/Text/ParagraphLayout/Internal/Span.hs +21/−7
- src/Data/Text/ParagraphLayout/Internal/TextContainer.hs +2/−2
- src/Data/Text/ParagraphLayout/Internal/TextOptions.hs +60/−0
- src/Data/Text/ParagraphLayout/Internal/Tree.hs +154/−0
- src/Data/Text/ParagraphLayout/Internal/WithSpan.hs +34/−0
- test/Data/Text/ParagraphLayout/FontLoader.hs +32/−1
- test/Data/Text/ParagraphLayout/Internal/ApplyBoxesSpec.hs +181/−0
- test/Data/Text/ParagraphLayout/Internal/TreeSpec.hs +158/−0
- test/Data/Text/ParagraphLayout/ParagraphData.hs +0/−114
- test/Data/Text/ParagraphLayout/Plain/ParagraphData.hs +120/−0
- test/Data/Text/ParagraphLayout/PlainSpec.hs +264/−0
- test/Data/Text/ParagraphLayout/PrettyShow.hs +228/−0
- test/Data/Text/ParagraphLayout/PrettyShow/Golden.hs +32/−0
- test/Data/Text/ParagraphLayout/Rich/ParagraphData.hs +169/−0
- test/Data/Text/ParagraphLayout/RichSpec.hs +142/−0
- test/Data/Text/ParagraphLayout/SpanData.hs +34/−16
- test/Data/Text/ParagraphLayoutSpec.hs +0/−444
− .golden/arabicFiller20em/golden
@@ -1,192 +0,0 @@-ParagraphLayout {paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 19850, y_size = -6000}, spanLayouts = [- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 19850, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 283, cluster = 93, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 388, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1075, cluster = 89, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 564, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 321, cluster = 87, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 770, cluster = 85, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 479, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 286, cluster = 83, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 955, cluster = 81, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 80, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 535, cluster = 78, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 714, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 840, cluster = 76, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 916, cluster = 74, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 524, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 321, cluster = 72, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 409, cluster = 70, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 69, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 293, cluster = 67, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 336, cluster = 65, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 334, cluster = 63, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 336, cluster = 61, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 773, cluster = 59, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 479, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 58, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 702, cluster = 56, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 1248, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 454, cluster = 54, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 319, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 770, cluster = 52, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 479, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 51, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 90, cluster = 50, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 535, cluster = 48, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 714, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 920, cluster = 46, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 483, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 45, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 924, cluster = 43, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 448, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 660, cluster = 41, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 531, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 940, cluster = 39, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 626, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 38, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 283, cluster = 36, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 388, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 293, cluster = 34, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 732, cluster = 32, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 689, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 765, cluster = 30, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 478, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 389, cluster = 28, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 955, cluster = 26, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 25, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 992, cluster = 23, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 726, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 659, cluster = 21, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 531, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 409, cluster = 19, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 307, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 389, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 14, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 502, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 657, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1075, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 564, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 770, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 479, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 288, cluster = 4, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -1500, x_size = 18895, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 90, cluster = 191, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 517, cluster = 189, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 839, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 286, cluster = 187, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 432, cluster = 185, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 265, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 293, cluster = 183, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 336, cluster = 181, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 381, cluster = 179, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 314, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 920, cluster = 177, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 483, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 176, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 293, cluster = 174, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 937, cluster = 172, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 316, cluster = 170, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 840, cluster = 168, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 394, cluster = 166, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 432, cluster = 164, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 265, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 286, cluster = 162, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 161, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 544, cluster = 159, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 919, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 316, cluster = 157, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 359, cluster = 155, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 827, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 477, cluster = 153, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 286, cluster = 151, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 150, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 644, cluster = 148, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 288, cluster = 146, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 145, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1087, cluster = 141, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 949, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 297, cluster = 139, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 138, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 93, cluster = 137, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1275, cluster = 133, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 726, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 955, cluster = 131, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 130, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 935, cluster = 128, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 476, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 336, cluster = 126, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 407, cluster = 124, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 293, cluster = 122, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 323, cluster = 120, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 477, cluster = 118, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 286, cluster = 116, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 115, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 293, cluster = 113, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 359, cluster = 111, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 827, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 407, cluster = 109, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 454, cluster = 107, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 319, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 808, cluster = 105, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 451, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 104, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 955, cluster = 102, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 101, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 90, cluster = 100, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1275, cluster = 96, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 726, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -3000, x_size = 19162, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 935, cluster = 280, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 476, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 606, cluster = 278, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 663, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 796, cluster = 276, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 442, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 710, cluster = 274, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 862, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 477, cluster = 272, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 286, cluster = 270, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 269, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1275, cluster = 265, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 726, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 264, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 90, cluster = 263, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 660, cluster = 261, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 531, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 636, cluster = 259, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 634, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1064, cluster = 255, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 518, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 286, cluster = 253, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 252, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 432, cluster = 250, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 265, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 293, cluster = 248, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 765, cluster = 246, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 478, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 715, cluster = 244, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 855, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 955, cluster = 242, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 241, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 502, cluster = 239, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 657, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 297, cluster = 237, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 236, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1311, cluster = 232, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 575, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 773, cluster = 230, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 479, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 229, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 93, cluster = 228, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1247, cluster = 224, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 890, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 624, cluster = 222, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 634, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 221, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 293, cluster = 219, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 920, cluster = 217, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 483, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 216, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1396, cluster = 214, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 283, cluster = 212, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 388, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 293, cluster = 210, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 321, cluster = 208, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 362, cluster = 206, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 827, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 477, cluster = 204, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 286, cluster = 202, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 201, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 502, cluster = 199, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 657, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 293, cluster = 197, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 840, cluster = 195, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 808, cluster = 193, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 451, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -4500, x_size = 14595, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 90, cluster = 356, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1204, cluster = 352, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 726, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 293, cluster = 350, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 765, cluster = 348, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 478, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 477, cluster = 346, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 286, cluster = 344, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 343, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 935, cluster = 341, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 476, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 409, cluster = 339, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 286, cluster = 337, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 659, cluster = 335, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 531, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 389, cluster = 333, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 955, cluster = 331, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 330, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 293, cluster = 328, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 920, cluster = 326, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 483, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 297, cluster = 324, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 323, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 502, cluster = 321, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 657, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 297, cluster = 319, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 318, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 93, cluster = 317, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 912, cluster = 315, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 646, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 394, cluster = 313, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 955, cluster = 311, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 310, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 494, cluster = 308, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 702, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1660, cluster = 304, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 0, y_advance = 0, x_offset = 115, y_offset = 80}),- (GlyphInfo {codepoint = 916, cluster = 304, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 524, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 606, cluster = 302, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 663, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 321, cluster = 300, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 394, cluster = 298, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 955, cluster = 296, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 295, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 935, cluster = 293, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 476, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 334, cluster = 291, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 916, cluster = 289, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 524, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 336, cluster = 287, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 937, cluster = 285, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 477, cluster = 283, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0})]- }]-]}
− .golden/czechHelloParagraph/golden
@@ -1,16 +0,0 @@-ParagraphLayout {paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 5274, y_size = -1121}, spanLayouts = [- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 5274, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 36, cluster = 5, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 663, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 75, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 571, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 15, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 10, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 89, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 488, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 246, cluster = 13, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 16, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 4, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 276, y_advance = 0, x_offset = 0, y_offset = 0})]- }]-]}
− .golden/czechHelloParagraphNarrow/golden
@@ -1,19 +0,0 @@-ParagraphLayout {paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 1234, y_size = -5605}, spanLayouts = [- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 1234, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 36, cluster = 5, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 663, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 75, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 571, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -1121, x_size = 1089, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 82, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 15, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -2242, x_size = 948, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 86, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 89, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 502, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -3363, x_size = 961, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 246, cluster = 13, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -4484, x_size = 835, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 72, cluster = 16, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 4, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 276, y_advance = 0, x_offset = 0, y_offset = 0})]- }]-]}
− .golden/czechHelloParagraphUltraNarrow/golden
@@ -1,25 +0,0 @@-ParagraphLayout {paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 663, y_size = -12331}, spanLayouts = [- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 663, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 36, cluster = 5, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 663, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -1121, x_size = 571, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 75, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 571, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -2242, x_size = 590, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 82, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -3363, x_size = 253, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 77, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -4484, x_size = 246, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 15, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -5605, x_size = 446, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 86, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -6726, x_size = 502, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 89, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 502, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -7847, x_size = 559, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 246, cluster = 13, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -8968, x_size = 402, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 87, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -10089, x_size = 559, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 72, cluster = 16, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -11210, x_size = 276, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 4, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 276, y_advance = 0, x_offset = 0, y_offset = 0})]- }]-]}
− .golden/devanagariAccentParagraph/golden
@@ -1,6 +0,0 @@-ParagraphLayout {paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 645, y_size = -1000}, spanLayouts = [- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 645, y_size = -1000}, fragmentPen = (0,-500), fragmentGlyphs =- [(GlyphInfo {codepoint = 529, cluster = 0, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 645, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 424, cluster = 0, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 0, y_advance = 0, x_offset = 0, y_offset = 0})]- }]-]}
− .golden/devanagariParagraph/golden
@@ -1,27 +0,0 @@-ParagraphLayout {paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 8640, y_size = -1630}, spanLayouts = [- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 8640, y_size = -1630}, fragmentPen = (0,-1171), fragmentGlyphs =- [(GlyphInfo {codepoint = 382, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 555, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 715, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 289, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 397, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 532, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 20, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 250, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 382, cluster = 21, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 555, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 715, cluster = 24, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 289, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 397, cluster = 30, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 532, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 33, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 250, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 618, cluster = 34, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 583, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 43, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 250, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 366, cluster = 44, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 655, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 813, cluster = 44, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 0, y_advance = 0, x_offset = -332, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 53, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 250, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 361, cluster = 54, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 845, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 407, cluster = 54, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 0, y_advance = 0, x_offset = -635, y_offset = 0}),- (GlyphInfo {codepoint = 361, cluster = 60, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 845, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 407, cluster = 60, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 0, y_advance = 0, x_offset = -635, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 66, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 250, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 606, cluster = 67, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 587, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 76, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 250, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 715, cluster = 77, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 289, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 679, cluster = 83, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 584, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 411, cluster = 83, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 0, y_advance = 0, x_offset = -465, y_offset = 0})]- }]-]}
− .golden/devanagariPrefixedAccentParagraph/golden
@@ -1,5 +0,0 @@-ParagraphLayout {paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 0, y_size = -1000}, spanLayouts = [- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 0, y_size = -1000}, fragmentPen = (0,-500), fragmentGlyphs =- [(GlyphInfo {codepoint = 424, cluster = 1, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 0, y_advance = 0, x_offset = 0, y_offset = 0})]- }]-]}
− .golden/hardBreaksLTRParagraph/golden
@@ -1,57 +0,0 @@-ParagraphLayout {paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 4305, y_size = -10089}, spanLayouts = [- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 1563, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 77, cluster = 1, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 2, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 3, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 4, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 5, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -1121, x_size = 3357, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 77, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 10, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 13, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 14, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 16, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 18, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 19, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 20, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -2242, x_size = 1563, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 77, cluster = 22, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 23, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 24, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 25, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 26, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 27, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -3363, x_size = 4305, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 80, cluster = 29, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 30, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 31, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 32, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 33, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -4484, x_size = 861, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 80, cluster = 34, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -5605, x_size = 1563, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 77, cluster = 37, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 38, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 39, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 40, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 41, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 42, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -6726, x_size = 0, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- []- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -7847, x_size = 3675, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 80, cluster = 45, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 46, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 47, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 48, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 49, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -8968, x_size = 1722, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 80, cluster = 51, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 52, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})]- }]-]}
− .golden/hardBreaksRTLParagraph/golden
@@ -1,58 +0,0 @@-ParagraphLayout {paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 5852, y_size = -13500}, spanLayouts = [- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 2808, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 642, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 642, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 642, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 642, cluster = 5, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 642, cluster = 3, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 642, cluster = 1, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -1500, x_size = 5852, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 642, cluster = 37, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 642, cluster = 35, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 642, cluster = 33, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 642, cluster = 31, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 642, cluster = 29, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 642, cluster = 27, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 26, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 642, cluster = 24, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 642, cluster = 22, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 642, cluster = 20, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 642, cluster = 18, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 642, cluster = 16, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 642, cluster = 14, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -3000, x_size = 2808, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 642, cluster = 50, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 642, cluster = 48, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 642, cluster = 46, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 642, cluster = 44, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 642, cluster = 42, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 642, cluster = 40, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -4500, x_size = 4884, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 359, cluster = 63, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 827, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 359, cluster = 61, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 827, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 359, cluster = 59, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 827, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 359, cluster = 57, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 827, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 359, cluster = 55, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 827, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 370, cluster = 53, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 749, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -6000, x_size = 1211, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 687, cluster = 65, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 1211, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -7500, x_size = 2808, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 642, cluster = 79, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 642, cluster = 77, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 642, cluster = 75, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 642, cluster = 73, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 642, cluster = 71, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 642, cluster = 69, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -9000, x_size = 0, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- []- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -10500, x_size = 4156, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 687, cluster = 90, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 1211, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 370, cluster = 88, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 749, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 87, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 687, cluster = 85, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 1211, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 370, cluster = 83, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 749, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -12000, x_size = 1960, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 687, cluster = 95, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 1211, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 370, cluster = 93, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 749, y_advance = 0, x_offset = 0, y_offset = 0})]- }]-]}
− .golden/ligatureParagraph/golden
@@ -1,13 +0,0 @@-ParagraphLayout {paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 4672, y_size = -1121}, spanLayouts = [- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 4672, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 76, cluster = 0, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 1, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 2, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 431, cluster = 3, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 1033, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 10, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})]- }]-]}
− .golden/ligatureParagraphBreak1/golden
@@ -1,16 +0,0 @@-ParagraphLayout {paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 2162, y_size = -3363}, spanLayouts = [- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 2162, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 76, cluster = 0, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 1, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 2, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 426, cluster = 3, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 776, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -1121, x_size = 2104, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 76, cluster = 5, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -2242, x_size = 402, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 87, cluster = 10, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})]- }]-]}
− .golden/ligatureParagraphBreak2/golden
@@ -1,16 +0,0 @@-ParagraphLayout {paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 1772, y_size = -3363}, spanLayouts = [- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 1772, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 76, cluster = 0, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 1, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 2, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 73, cluster = 3, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -1121, x_size = 1361, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 428, cluster = 4, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 643, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -2242, x_size = 1535, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 72, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 10, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})]- }]-]}
− .golden/lineHeightLarger/golden
@@ -1,5 +0,0 @@-ParagraphLayout {paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 522, y_size = -1600}, spanLayouts = [- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 522, y_size = -1600}, fragmentPen = (0,-1172), fragmentGlyphs =- [(GlyphInfo {codepoint = 68, cluster = 3, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})]- }]-]}
− .golden/lineHeightNormal/golden
@@ -1,5 +0,0 @@-ParagraphLayout {paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 522, y_size = -1121}, spanLayouts = [- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 522, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 68, cluster = 3, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})]- }]-]}
− .golden/lineHeightSmaller/golden
@@ -1,5 +0,0 @@-ParagraphLayout {paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 522, y_size = -599}, spanLayouts = [- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 522, y_size = -599}, fragmentPen = (0,-671), fragmentGlyphs =- [(GlyphInfo {codepoint = 68, cluster = 3, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})]- }]-]}
− .golden/loremIpsum100em/golden
@@ -1,447 +0,0 @@-ParagraphLayout {paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 98954, y_size = -3363}, spanLayouts = [- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 95412, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 47, cluster = 4, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 507, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 5, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 10, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 13, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 14, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 16, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 18, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 19, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 20, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 21, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 22, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 23, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 24, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 25, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 26, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 27, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 28, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 29, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 15, cluster = 30, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 31, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 32, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 33, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 34, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 35, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 36, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 37, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 38, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 39, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 40, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 41, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 42, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 43, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 44, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 45, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 46, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 47, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 48, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 49, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 50, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 51, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 52, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 74, cluster = 53, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 54, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 55, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 56, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 57, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 58, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 15, cluster = 59, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 60, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 61, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 62, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 63, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 64, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 65, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 66, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 67, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 68, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 69, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 70, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 71, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 72, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 73, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 74, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 75, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 76, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 77, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 78, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 79, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 80, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 81, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 82, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 83, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 84, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 85, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 86, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 87, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 88, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 89, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 90, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 91, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 92, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 93, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 94, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 95, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 96, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 97, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 98, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 69, cluster = 99, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 100, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 101, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 102, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 103, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 104, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 105, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 106, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 107, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 108, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 109, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 110, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 111, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 112, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 113, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 114, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 115, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 74, cluster = 116, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 117, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 118, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 119, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 120, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 121, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 122, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 84, cluster = 123, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 124, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 125, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 17, cluster = 126, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 127, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 56, cluster = 128, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 688, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 129, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 130, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 131, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 132, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 133, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 134, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 135, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 136, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 137, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 138, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 139, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 140, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 141, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 142, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 143, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 144, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 89, cluster = 145, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 488, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 146, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 147, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 148, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 149, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 150, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 15, cluster = 151, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 152, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 84, cluster = 153, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 154, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 155, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 156, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 157, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 158, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 159, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 160, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 161, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 162, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 163, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 164, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 165, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 166, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 91, cluster = 167, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 490, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 168, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 169, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 170, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 171, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 172, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 173, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 174, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 175, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 176, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 177, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 178, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 179, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 180, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 181, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 182, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 183, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 184, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 185, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 186, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 187, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 188, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 69, cluster = 189, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 190, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 191, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 192, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 193, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 194, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 195, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 196, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 197, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 198, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 199, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 200, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 201, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 202, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 203, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 204, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 205, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 84, cluster = 206, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 207, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 208, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 209, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 210, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 211, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 91, cluster = 212, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 511, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 213, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 214, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 215, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -1121, x_size = 98954, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 70, cluster = 217, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 218, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 219, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 220, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 221, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 222, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 223, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 224, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 225, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 226, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 227, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 228, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 229, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 84, cluster = 230, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 231, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 232, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 233, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 17, cluster = 234, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 235, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 39, cluster = 236, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 713, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 237, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 238, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 239, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 240, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 241, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 242, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 243, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 244, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 245, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 246, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 247, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 248, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 249, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 250, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 251, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 252, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 253, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 254, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 255, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 256, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 257, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 258, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 259, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 260, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 261, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 262, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 263, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 264, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 265, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 75, cluster = 266, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 571, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 267, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 268, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 269, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 270, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 271, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 272, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 273, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 274, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 275, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 276, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 277, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 89, cluster = 278, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 488, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 279, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 280, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 281, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 282, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 283, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 284, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 285, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 286, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 287, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 89, cluster = 288, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 488, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 289, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 290, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 291, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 292, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 293, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 294, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 295, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 296, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 297, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 298, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 299, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 300, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 301, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 302, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 303, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 304, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 305, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 306, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 307, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 308, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 309, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 310, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 311, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 312, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 313, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 314, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 315, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 73, cluster = 316, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 317, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 74, cluster = 318, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 319, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 320, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 321, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 322, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 323, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 324, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 325, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 326, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 327, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 328, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 329, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 330, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 331, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 332, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 333, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 334, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 335, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 336, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 331, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 17, cluster = 337, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 338, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 40, cluster = 339, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 580, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 91, cluster = 340, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 490, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 341, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 342, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 343, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 344, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 345, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 346, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 347, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 348, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 349, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 350, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 351, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 352, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 353, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 354, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 355, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 356, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 357, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 358, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 359, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 360, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 361, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 362, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 363, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 364, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 365, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 366, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 367, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 368, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 369, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 370, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 371, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 372, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 373, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 374, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 375, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 376, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 377, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 378, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 379, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 380, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 381, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 382, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 383, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 384, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 15, cluster = 385, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 386, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 387, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 388, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 389, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 390, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 391, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 392, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 393, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 394, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 395, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 396, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 397, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 398, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 399, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 400, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 84, cluster = 401, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 402, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 403, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 404, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 405, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 431, cluster = 406, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 1033, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 409, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 410, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 411, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 412, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 413, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 414, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 415, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 416, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 417, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 418, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 419, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 420, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 421, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 422, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 423, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 424, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 425, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 426, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 427, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 428, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 429, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 430, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 431, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 432, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 433, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 434, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 435, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 436, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 437, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 438, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 439, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -2242, x_size = 4041, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 79, cluster = 441, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 442, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 69, cluster = 443, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 444, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 445, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 446, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 447, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 17, cluster = 448, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})]- }]-]}
− .golden/loremIpsum20em/golden
@@ -1,447 +0,0 @@-ParagraphLayout {paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 19791, y_size = -12331}, spanLayouts = [- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 18310, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 47, cluster = 4, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 507, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 5, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 10, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 13, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 14, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 16, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 18, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 19, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 20, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 21, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 22, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 23, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 24, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 25, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 26, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 27, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 28, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 29, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 15, cluster = 30, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 31, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 32, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 33, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 34, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 35, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 36, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 37, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 38, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 39, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 40, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 41, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 42, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -1121, x_size = 17443, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 68, cluster = 44, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 45, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 46, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 47, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 48, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 49, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 50, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 51, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 52, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 74, cluster = 53, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 54, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 55, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 56, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 57, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 58, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 15, cluster = 59, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 60, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 61, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 62, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 63, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 64, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 65, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 66, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 67, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 68, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 69, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 70, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 71, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 72, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 73, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 74, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 75, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 76, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 77, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 78, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 79, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 80, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 81, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -2242, x_size = 19791, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 76, cluster = 83, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 84, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 85, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 86, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 87, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 88, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 89, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 90, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 91, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 92, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 93, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 94, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 95, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 96, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 97, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 98, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 69, cluster = 99, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 100, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 101, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 102, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 103, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 104, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 105, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 106, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 107, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 108, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 109, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 110, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 111, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 112, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 113, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 114, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 115, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 74, cluster = 116, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 117, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 118, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 119, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 120, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 121, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 122, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 84, cluster = 123, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 124, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 125, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 17, cluster = 126, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -3363, x_size = 17562, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 56, cluster = 128, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 688, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 129, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 130, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 131, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 132, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 133, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 134, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 135, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 136, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 137, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 138, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 139, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 140, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 141, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 142, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 143, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 144, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 89, cluster = 145, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 488, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 146, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 147, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 148, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 149, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 150, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 15, cluster = 151, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 152, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 84, cluster = 153, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 154, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 155, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 156, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 157, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 158, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 159, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 160, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 161, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 162, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 163, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 164, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -4484, x_size = 18769, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 72, cluster = 166, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 91, cluster = 167, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 490, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 168, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 169, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 170, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 171, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 172, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 173, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 174, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 175, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 176, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 177, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 178, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 179, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 180, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 181, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 182, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 183, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 184, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 185, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 186, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 187, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 188, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 69, cluster = 189, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 190, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 191, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 192, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 193, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 194, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 195, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 196, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 197, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 198, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 199, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 200, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 201, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 202, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 203, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 204, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 205, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 84, cluster = 206, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 207, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 208, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 209, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -5605, x_size = 19226, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 72, cluster = 211, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 91, cluster = 212, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 511, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 213, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 214, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 215, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 216, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 217, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 218, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 219, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 220, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 221, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 222, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 223, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 224, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 225, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 226, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 227, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 228, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 229, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 84, cluster = 230, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 231, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 232, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 233, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 17, cluster = 234, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 235, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 39, cluster = 236, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 713, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 237, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 238, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 239, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 240, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 241, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 242, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 243, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 244, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 245, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 246, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 247, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 248, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 249, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 250, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -6726, x_size = 17973, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 71, cluster = 252, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 253, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 254, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 255, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 256, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 257, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 258, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 259, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 260, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 261, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 262, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 263, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 264, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 265, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 75, cluster = 266, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 571, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 267, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 268, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 269, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 270, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 271, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 272, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 273, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 274, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 275, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 276, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 277, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 89, cluster = 278, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 488, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 279, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 280, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 281, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 282, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 283, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 284, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 285, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 286, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 287, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 89, cluster = 288, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 488, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 289, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 290, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 291, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 292, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -7847, x_size = 18971, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 72, cluster = 294, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 295, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 296, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 297, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 298, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 299, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 300, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 301, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 302, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 303, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 304, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 305, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 306, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 307, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 308, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 309, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 310, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 311, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 312, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 313, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 314, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 315, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 73, cluster = 316, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 317, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 74, cluster = 318, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 319, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 320, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 321, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 322, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 323, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 324, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 325, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 326, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 327, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 328, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 329, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 330, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 331, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 332, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 333, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 334, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 335, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 336, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 331, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 17, cluster = 337, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -8968, x_size = 17239, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 40, cluster = 339, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 580, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 91, cluster = 340, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 490, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 341, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 342, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 343, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 344, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 345, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 346, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 347, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 348, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 349, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 350, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 351, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 352, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 353, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 354, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 355, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 356, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 357, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 358, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 359, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 360, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 361, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 362, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 363, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 364, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 365, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 366, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 367, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 368, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 369, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 370, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 371, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 372, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 373, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 374, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 375, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -10089, x_size = 19199, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 83, cluster = 377, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 378, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 379, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 380, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 381, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 382, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 383, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 384, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 15, cluster = 385, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 386, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 387, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 388, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 389, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 390, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 391, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 392, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 393, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 394, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 395, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 396, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 397, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 398, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 399, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 400, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 84, cluster = 401, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 402, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 403, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 404, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 405, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 431, cluster = 406, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 1033, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 409, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 410, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 411, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 412, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 413, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 414, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 415, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 416, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 417, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 418, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 419, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 420, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -11210, x_size = 12076, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 80, cluster = 422, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 423, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 424, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 425, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 426, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 427, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 428, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 429, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 430, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 431, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 432, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 433, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 434, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 435, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 436, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 437, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 438, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 439, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 440, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 441, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 442, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 69, cluster = 443, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 444, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 445, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 446, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 447, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 17, cluster = 448, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})]- }]-]}
− .golden/loremIpsum20emPaginated/golden
@@ -1,456 +0,0 @@-[(Continue, ParagraphLayout {paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 18310, y_size = -2242}, spanLayouts = [- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 18310, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 47, cluster = 4, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 507, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 5, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 10, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 13, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 14, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 16, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 18, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 19, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 20, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 21, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 22, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 23, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 24, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 25, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 26, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 27, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 28, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 29, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 15, cluster = 30, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 31, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 32, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 33, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 34, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 35, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 36, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 37, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 38, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 39, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 40, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 41, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 42, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -1121, x_size = 17443, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 68, cluster = 44, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 45, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 46, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 47, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 48, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 49, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 50, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 51, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 52, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 74, cluster = 53, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 54, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 55, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 56, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 57, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 58, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 15, cluster = 59, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 60, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 61, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 62, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 63, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 64, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 65, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 66, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 67, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 68, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 69, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 70, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 71, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 72, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 73, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 74, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 75, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 76, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 77, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 78, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 79, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 80, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 81, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})]- }]-]}-),-(Continue, ParagraphLayout {paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 19791, y_size = -6726}, spanLayouts = [- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 19791, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 76, cluster = 83, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 84, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 85, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 86, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 87, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 88, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 89, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 90, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 91, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 92, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 93, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 94, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 95, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 96, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 97, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 98, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 69, cluster = 99, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 100, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 101, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 102, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 103, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 104, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 105, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 106, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 107, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 108, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 109, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 110, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 111, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 112, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 113, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 114, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 115, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 74, cluster = 116, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 117, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 118, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 119, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 120, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 121, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 122, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 84, cluster = 123, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 124, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 125, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 17, cluster = 126, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -1121, x_size = 17562, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 56, cluster = 128, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 688, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 129, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 130, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 131, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 132, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 133, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 134, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 135, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 136, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 137, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 138, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 139, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 140, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 141, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 142, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 143, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 144, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 89, cluster = 145, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 488, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 146, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 147, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 148, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 149, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 150, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 15, cluster = 151, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 152, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 84, cluster = 153, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 154, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 155, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 156, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 157, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 158, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 159, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 160, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 161, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 162, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 163, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 164, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -2242, x_size = 18769, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 72, cluster = 166, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 91, cluster = 167, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 490, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 168, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 169, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 170, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 171, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 172, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 173, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 174, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 175, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 176, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 177, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 178, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 179, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 180, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 181, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 182, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 183, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 184, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 185, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 186, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 187, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 188, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 69, cluster = 189, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 190, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 191, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 192, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 193, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 194, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 195, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 196, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 197, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 198, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 199, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 200, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 201, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 202, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 203, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 204, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 205, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 84, cluster = 206, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 207, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 208, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 209, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -3363, x_size = 19226, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 72, cluster = 211, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 91, cluster = 212, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 511, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 213, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 214, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 215, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 216, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 217, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 218, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 219, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 220, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 221, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 222, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 223, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 224, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 225, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 226, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 227, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 228, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 229, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 84, cluster = 230, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 231, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 232, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 233, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 17, cluster = 234, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 235, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 39, cluster = 236, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 713, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 237, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 238, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 239, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 240, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 241, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 242, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 243, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 244, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 245, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 246, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 247, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 248, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 249, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 250, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -4484, x_size = 17973, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 71, cluster = 252, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 253, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 254, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 255, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 256, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 257, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 258, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 259, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 260, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 261, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 262, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 263, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 264, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 265, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 75, cluster = 266, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 571, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 267, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 268, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 269, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 270, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 271, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 272, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 273, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 274, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 275, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 276, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 277, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 89, cluster = 278, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 488, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 279, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 280, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 281, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 282, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 283, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 284, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 285, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 286, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 287, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 89, cluster = 288, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 488, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 289, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 290, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 291, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 292, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -5605, x_size = 18971, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 72, cluster = 294, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 295, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 296, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 297, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 298, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 299, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 300, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 301, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 302, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 303, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 304, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 305, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 306, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 307, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 308, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 309, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 310, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 311, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 312, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 313, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 314, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 315, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 73, cluster = 316, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 317, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 74, cluster = 318, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 319, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 320, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 321, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 322, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 323, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 324, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 325, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 326, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 327, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 328, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 329, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 330, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 331, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 332, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 333, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 334, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 335, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 336, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 331, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 17, cluster = 337, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})]- }]-]}-),-(Continue, ParagraphLayout {paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 19199, y_size = -3363}, spanLayouts = [- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 17239, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 40, cluster = 339, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 580, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 91, cluster = 340, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 490, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 341, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 342, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 343, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 344, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 345, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 346, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 347, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 348, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 349, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 350, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 351, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 352, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 353, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 354, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 355, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 356, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 357, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 358, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 359, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 360, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 361, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 362, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 363, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 364, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 365, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 366, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 367, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 368, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 369, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 370, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 371, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 372, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 373, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 374, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 375, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -1121, x_size = 19199, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 83, cluster = 377, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 378, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 379, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 380, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 381, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 382, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 383, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 384, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 15, cluster = 385, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 386, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 387, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 388, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 389, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 390, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 391, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 392, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 393, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 394, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 395, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 396, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 397, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 398, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 399, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 400, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 84, cluster = 401, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 402, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 403, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 404, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 405, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 431, cluster = 406, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 1033, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 409, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 410, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 411, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 412, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 413, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 414, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 415, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 416, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 417, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 418, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 419, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 420, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -2242, x_size = 12076, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 80, cluster = 422, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 423, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 424, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 425, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 426, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 427, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 428, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 429, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 430, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 431, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 432, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 433, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 434, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 435, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 436, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 437, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 438, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 439, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 440, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 441, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 442, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 69, cluster = 443, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 444, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 445, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 446, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 447, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 17, cluster = 448, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})]- }]-]}-)]
− .golden/manySpacesParagraph/golden
@@ -1,31 +0,0 @@-ParagraphLayout {paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 3132, y_size = -4484}, spanLayouts = [- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 3132, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 68, cluster = 3, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 4, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 5, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -1121, x_size = 3132, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 68, cluster = 10, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 13, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 14, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -2242, x_size = 3132, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 68, cluster = 18, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 19, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 20, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 21, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 22, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 23, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -3363, x_size = 3132, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 68, cluster = 27, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 28, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 29, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 30, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 31, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 32, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})]- }]-]}
− .golden/mixedLanguageLTRParagraph/golden
@@ -1,20 +0,0 @@-ParagraphLayout {paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 6113, y_size = -1121}, spanLayouts = [- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 4837, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 77, cluster = 4, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 5, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 10, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 92, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 497, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 15, cluster = 13, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 14, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 4837, y_origin = 0, x_size = 1276, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 0, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 500, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 0, cluster = 18, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 500, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 4, cluster = 21, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 276, y_advance = 0, x_offset = 0, y_offset = 0})]- }]-]}
− .golden/mixedScriptWordsParagraph/golden
@@ -1,76 +0,0 @@-ParagraphLayout {paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 5447, y_size = -6726}, spanLayouts = [- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 777, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 77, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 777, y_origin = 0, x_size = 2335, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 758, cluster = 10, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 758, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 758, cluster = 14, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 3112, y_origin = 0, x_size = 777, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 77, cluster = 16, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 18, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -1121, x_size = 777, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 77, cluster = 20, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 21, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 22, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 777, y_origin = -1121, x_size = 2335, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 758, cluster = 23, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 758, cluster = 25, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 758, cluster = 27, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 3112, y_origin = -1121, x_size = 777, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 77, cluster = 29, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 30, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 31, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -2242, x_size = 2335, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 758, cluster = 33, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 758, cluster = 35, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 758, cluster = 37, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 2335, y_origin = -2242, x_size = 777, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 77, cluster = 39, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 40, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 41, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 3112, y_origin = -2242, x_size = 2335, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 758, cluster = 42, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 758, cluster = 44, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 758, cluster = 46, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -3363, x_size = 2335, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 758, cluster = 49, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 758, cluster = 51, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 758, cluster = 53, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 2335, y_origin = -3363, x_size = 777, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 77, cluster = 55, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 56, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 57, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 3112, y_origin = -3363, x_size = 2335, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 758, cluster = 58, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 758, cluster = 60, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 758, cluster = 62, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -4484, x_size = 253, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 77, cluster = 65, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 253, y_origin = -4484, x_size = 763, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 758, cluster = 66, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 1016, y_origin = -4484, x_size = 737, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 77, cluster = 68, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 69, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 77, cluster = 70, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 1753, y_origin = -4484, x_size = 763, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 758, cluster = 71, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 2516, y_origin = -4484, x_size = 484, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 77, cluster = 73, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 74, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 3000, y_origin = -4484, x_size = 763, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 758, cluster = 75, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 3763, y_origin = -4484, x_size = 253, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 77, cluster = 77, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 4016, y_origin = -4484, x_size = 763, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 758, cluster = 78, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -5605, x_size = 763, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 758, cluster = 81, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 763, y_origin = -5605, x_size = 253, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 77, cluster = 83, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 1016, y_origin = -5605, x_size = 763, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 758, cluster = 84, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})]- }]-]}
+ .golden/paginatedParagraphLayout/loremIpsum20em.golden view
@@ -0,0 +1,576 @@+[ (Continue, ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 18310, y_size = -2242}+ , spanLayouts = [+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = NoEdge, boxStartEdge = SpacedEdge 0, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 18310, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 47, cluster = 4, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 507, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 5, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 10, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 13, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 14, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 16, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 18, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 19, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 20, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 21, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 22, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 23, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 24, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 25, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 26, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 27, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 28, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 29, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 15, cluster = 30, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 31, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 32, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 33, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 34, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 35, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 36, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 37, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 38, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 39, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 40, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 41, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 42, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -1121, x_size = 17443, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 68, cluster = 44, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 45, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 46, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 47, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 48, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 49, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 50, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 51, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 52, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 74, cluster = 53, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 54, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 55, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 56, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 57, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 58, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 15, cluster = 59, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 60, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 61, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 62, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 63, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 64, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 65, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 66, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 67, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 68, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 69, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 70, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 71, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 72, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 73, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 74, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 75, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 76, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 77, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 78, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 79, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 80, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 81, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ]}+)+, (Continue, ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 19791, y_size = -6726}+ , spanLayouts = [+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 3+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 19791, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 76, cluster = 83, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 84, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 85, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 86, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 87, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 88, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 89, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 90, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 91, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 92, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 93, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 94, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 95, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 96, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 97, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 98, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 69, cluster = 99, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 100, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 101, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 102, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 103, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 104, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 105, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 106, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 107, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 108, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 109, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 110, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 111, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 112, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 113, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 114, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 115, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 74, cluster = 116, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 117, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 118, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 119, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 120, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 121, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 122, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 123, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 124, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 125, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 17, cluster = 126, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 4+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -1121, x_size = 17562, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 56, cluster = 128, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 688, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 129, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 130, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 131, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 132, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 133, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 134, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 135, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 136, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 137, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 138, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 139, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 140, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 141, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 142, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 143, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 144, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 89, cluster = 145, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 488, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 146, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 147, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 148, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 149, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 150, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 15, cluster = 151, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 152, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 153, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 154, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 155, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 156, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 157, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 158, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 159, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 160, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 161, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 162, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 163, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 164, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 5+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -2242, x_size = 18769, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 72, cluster = 166, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 91, cluster = 167, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 490, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 168, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 169, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 170, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 171, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 172, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 173, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 174, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 175, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 176, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 177, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 178, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 179, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 180, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 181, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 182, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 183, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 184, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 185, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 186, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 187, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 188, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 69, cluster = 189, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 190, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 191, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 192, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 193, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 194, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 195, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 196, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 197, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 198, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 199, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 200, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 201, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 202, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 203, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 204, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 205, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 206, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 207, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 208, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 209, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 6+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -3363, x_size = 19226, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 72, cluster = 211, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 91, cluster = 212, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 511, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 213, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 214, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 215, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 216, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 217, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 218, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 219, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 220, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 221, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 222, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 223, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 224, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 225, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 226, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 227, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 228, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 229, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 230, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 231, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 232, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 233, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 17, cluster = 234, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 235, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 39, cluster = 236, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 713, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 237, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 238, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 239, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 240, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 241, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 242, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 243, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 244, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 245, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 246, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 247, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 248, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 249, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 250, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 7+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -4484, x_size = 17973, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 71, cluster = 252, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 253, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 254, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 255, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 256, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 257, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 258, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 259, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 260, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 261, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 262, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 263, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 264, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 265, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 75, cluster = 266, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 571, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 267, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 268, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 269, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 270, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 271, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 272, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 273, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 274, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 275, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 276, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 277, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 89, cluster = 278, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 488, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 279, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 280, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 281, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 282, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 283, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 284, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 285, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 286, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 287, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 89, cluster = 288, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 488, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 289, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 290, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 291, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 292, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 8+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -5605, x_size = 18971, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 72, cluster = 294, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 295, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 296, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 297, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 298, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 299, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 300, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 301, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 302, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 303, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 304, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 305, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 306, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 307, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 308, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 309, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 310, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 311, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 312, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 313, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 314, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 315, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 73, cluster = 316, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 317, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 74, cluster = 318, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 319, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 320, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 321, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 322, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 323, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 324, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 325, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 326, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 327, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 328, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 329, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 330, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 331, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 332, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 333, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 334, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 335, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 336, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 331, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 17, cluster = 337, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ]}+)+, (Continue, ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 19199, y_size = -3363}+ , spanLayouts = [+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 9+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 17239, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 40, cluster = 339, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 580, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 91, cluster = 340, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 490, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 341, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 342, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 343, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 344, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 345, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 346, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 347, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 348, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 349, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 350, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 351, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 352, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 353, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 354, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 355, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 356, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 357, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 358, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 359, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 360, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 361, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 362, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 363, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 364, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 365, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 366, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 367, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 368, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 369, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 370, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 371, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 372, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 373, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 374, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 375, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 10+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -1121, x_size = 19199, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 83, cluster = 377, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 378, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 379, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 380, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 381, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 382, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 383, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 384, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 15, cluster = 385, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 386, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 387, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 388, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 389, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 390, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 391, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 392, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 393, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 394, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 395, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 396, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 397, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 398, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 399, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 400, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 401, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 402, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 403, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 404, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 405, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 431, cluster = 406, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 1033, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 409, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 410, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 411, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 412, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 413, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 414, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 415, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 416, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 417, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 418, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 419, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 420, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 11+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = SpacedEdge 0, boxStartEdge = NoEdge, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -2242, x_size = 12076, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 80, cluster = 422, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 423, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 424, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 425, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 426, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 427, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 428, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 429, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 430, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 431, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 432, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 433, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 434, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 435, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 436, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 437, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 438, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 439, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 440, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 441, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 442, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 69, cluster = 443, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 444, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 445, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 446, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 447, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 17, cluster = 448, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ]}+)+]
+ .golden/paginatedParagraphLayout/spannedArabicFiller20em.golden view
@@ -0,0 +1,420 @@+[ (Break, ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 19850, y_size = -3000}+ , spanLayouts = [+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 12652, y_origin = 0, x_size = 7198, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 3, cluster = 38, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 283, cluster = 36, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 388, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 34, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 732, cluster = 32, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 689, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 765, cluster = 30, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 478, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 389, cluster = 28, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 955, cluster = 26, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 25, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 992, cluster = 23, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 726, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 659, cluster = 21, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 531, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 409, cluster = 19, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 307, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 389, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 14, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 502, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 657, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1075, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 564, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 770, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 479, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 288, cluster = 4, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 7060, y_origin = 0, x_size = 5592, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 702, cluster = 56, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 1248, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 454, cluster = 54, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 319, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 770, cluster = 52, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 479, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 51, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 90, cluster = 50, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 535, cluster = 48, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 714, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 920, cluster = 46, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 483, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 45, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 924, cluster = 43, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 448, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 660, cluster = 41, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 531, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 940, cluster = 39, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 626, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 7060, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 283, cluster = 93, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 388, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1075, cluster = 89, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 564, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 321, cluster = 87, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 770, cluster = 85, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 479, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 286, cluster = 83, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 955, cluster = 81, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 80, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 535, cluster = 78, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 714, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 840, cluster = 76, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 916, cluster = 74, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 524, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 321, cluster = 72, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 409, cluster = 70, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 69, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 67, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 336, cluster = 65, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 334, cluster = 63, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 336, cluster = 61, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 773, cluster = 59, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 479, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 58, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 14850, y_origin = -1500, x_size = 4045, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 293, cluster = 113, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 359, cluster = 111, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 827, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 407, cluster = 109, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 454, cluster = 107, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 319, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 808, cluster = 105, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 451, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 104, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 955, cluster = 102, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 101, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 90, cluster = 100, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1275, cluster = 96, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 726, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 9168, y_origin = -1500, x_size = 5682, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 3, cluster = 145, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1087, cluster = 141, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 949, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 297, cluster = 139, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 138, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 93, cluster = 137, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1275, cluster = 133, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 726, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 955, cluster = 131, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 130, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 935, cluster = 128, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 476, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 336, cluster = 126, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 407, cluster = 124, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 122, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 323, cluster = 120, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 477, cluster = 118, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 286, cluster = 116, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 115, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 3213, y_origin = -1500, x_size = 5955, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 293, cluster = 174, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 937, cluster = 172, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 316, cluster = 170, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 840, cluster = 168, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 394, cluster = 166, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 432, cluster = 164, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 265, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 286, cluster = 162, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 161, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 544, cluster = 159, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 919, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 316, cluster = 157, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 359, cluster = 155, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 827, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 477, cluster = 153, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 286, cluster = 151, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 150, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 644, cluster = 148, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 288, cluster = 146, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = NoEdge, boxStartEdge = SpacedEdge 0, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -1500, x_size = 3213, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 90, cluster = 191, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 517, cluster = 189, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 839, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 286, cluster = 187, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 432, cluster = 185, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 265, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 183, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 336, cluster = 181, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 381, cluster = 179, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 314, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 920, cluster = 177, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 483, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 176, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ []+ ,+ SpanLayout+ []+ ,+ SpanLayout+ []+ ,+ SpanLayout+ []+ ,+ SpanLayout+ []+ ]}+)+, (Continue, ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 19162, y_size = -3000}+ , spanLayouts = [+ SpanLayout+ []+ ,+ SpanLayout+ []+ ,+ SpanLayout+ []+ ,+ SpanLayout+ []+ ,+ SpanLayout+ []+ ,+ SpanLayout+ []+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 3+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = SpacedEdge 0, boxStartEdge = NoEdge, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 14300, y_origin = 0, x_size = 4862, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 3, cluster = 216, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1396, cluster = 214, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 283, cluster = 212, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 388, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 210, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 321, cluster = 208, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 362, cluster = 206, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 827, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 477, cluster = 204, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 286, cluster = 202, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 201, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 502, cluster = 199, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 657, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 197, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 840, cluster = 195, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 808, cluster = 193, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 451, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 3+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 10225, y_origin = 0, x_size = 4075, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 1311, cluster = 232, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 575, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 773, cluster = 230, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 479, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 229, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 93, cluster = 228, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1247, cluster = 224, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 890, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 624, cluster = 222, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 634, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 221, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 219, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 920, cluster = 217, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 483, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 3+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 3898, y_origin = 0, x_size = 6327, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 3, cluster = 264, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 90, cluster = 263, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 660, cluster = 261, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 531, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 636, cluster = 259, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 634, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1064, cluster = 255, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 518, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 286, cluster = 253, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 252, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 432, cluster = 250, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 265, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 248, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 765, cluster = 246, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 478, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 715, cluster = 244, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 855, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 955, cluster = 242, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 241, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 502, cluster = 239, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 657, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 297, cluster = 237, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 236, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 3+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = NoEdge, boxStartEdge = SpacedEdge 0, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 3898, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 935, cluster = 280, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 476, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 606, cluster = 278, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 663, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 796, cluster = 276, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 442, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 710, cluster = 274, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 862, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 477, cluster = 272, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 286, cluster = 270, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 269, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1275, cluster = 265, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 726, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 4+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = SpacedEdge 0, boxStartEdge = NoEdge, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 12238, y_origin = -1500, x_size = 2357, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 935, cluster = 293, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 476, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 334, cluster = 291, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 916, cluster = 289, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 524, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 336, cluster = 287, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 937, cluster = 285, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 477, cluster = 283, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 4+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 5880, y_origin = -1500, x_size = 6358, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 3, cluster = 323, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 502, cluster = 321, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 657, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 297, cluster = 319, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 318, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 93, cluster = 317, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 912, cluster = 315, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 646, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 394, cluster = 313, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 955, cluster = 311, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 310, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 494, cluster = 308, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 702, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1660, cluster = 304, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 0, y_advance = 0, x_offset = 115, y_offset = 80})+ , (GlyphInfo {codepoint = 916, cluster = 304, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 524, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 606, cluster = 302, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 663, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 321, cluster = 300, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 394, cluster = 298, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 955, cluster = 296, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 295, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 4+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -1500, x_size = 5880, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 90, cluster = 356, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1204, cluster = 352, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 726, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 350, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 765, cluster = 348, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 478, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 477, cluster = 346, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 286, cluster = 344, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 343, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 935, cluster = 341, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 476, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 409, cluster = 339, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 286, cluster = 337, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 659, cluster = 335, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 531, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 389, cluster = 333, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 955, cluster = 331, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 330, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 328, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 920, cluster = 326, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 483, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 297, cluster = 324, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ]}+)+]
+ .golden/paginatedRichParagraphLayout/loremIpsum20em.golden view
@@ -0,0 +1,562 @@+[ (Continue, ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 18310, y_size = -2242}+ , paragraphFragments =+ [ Fragment+ { fragmentUserData = "text"+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 18310, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 47, cluster = 4, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 507, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 5, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 10, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 13, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 14, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 16, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 18, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 19, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 20, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 21, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 22, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 23, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 24, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 25, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 26, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 27, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 28, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 29, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 15, cluster = 30, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 31, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 32, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 33, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 34, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 35, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 36, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 37, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 38, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 39, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 40, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 41, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 42, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text"+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 0, y_origin = -1121, x_size = 17443, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 68, cluster = 44, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 45, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 46, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 47, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 48, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 49, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 50, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 51, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 52, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 74, cluster = 53, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 54, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 55, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 56, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 57, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 58, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 15, cluster = 59, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 60, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 61, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 62, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 63, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 64, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 65, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 66, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 67, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 68, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 69, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 70, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 71, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 72, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 73, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 74, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 75, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 76, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 77, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 78, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 79, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 80, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 81, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ }+)+, (Continue, ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 19791, y_size = -6726}+ , paragraphFragments =+ [ Fragment+ { fragmentUserData = "text"+ , fragmentLine = 3+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 19791, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 76, cluster = 83, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 84, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 85, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 86, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 87, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 88, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 89, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 90, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 91, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 92, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 93, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 94, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 95, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 96, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 97, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 98, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 69, cluster = 99, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 100, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 101, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 102, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 103, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 104, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 105, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 106, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 107, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 108, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 109, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 110, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 111, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 112, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 113, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 114, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 115, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 74, cluster = 116, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 117, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 118, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 119, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 120, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 121, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 122, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 123, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 124, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 125, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 17, cluster = 126, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text"+ , fragmentLine = 4+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 0, y_origin = -1121, x_size = 17562, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 56, cluster = 128, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 688, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 129, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 130, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 131, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 132, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 133, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 134, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 135, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 136, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 137, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 138, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 139, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 140, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 141, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 142, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 143, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 144, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 89, cluster = 145, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 488, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 146, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 147, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 148, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 149, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 150, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 15, cluster = 151, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 152, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 153, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 154, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 155, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 156, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 157, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 158, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 159, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 160, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 161, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 162, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 163, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 164, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text"+ , fragmentLine = 5+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 0, y_origin = -2242, x_size = 18769, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 72, cluster = 166, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 91, cluster = 167, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 490, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 168, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 169, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 170, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 171, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 172, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 173, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 174, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 175, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 176, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 177, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 178, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 179, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 180, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 181, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 182, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 183, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 184, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 185, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 186, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 187, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 188, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 69, cluster = 189, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 190, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 191, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 192, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 193, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 194, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 195, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 196, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 197, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 198, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 199, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 200, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 201, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 202, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 203, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 204, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 205, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 206, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 207, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 208, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 209, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text"+ , fragmentLine = 6+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 0, y_origin = -3363, x_size = 19226, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 72, cluster = 211, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 91, cluster = 212, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 511, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 213, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 214, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 215, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 216, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 217, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 218, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 219, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 220, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 221, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 222, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 223, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 224, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 225, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 226, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 227, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 228, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 229, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 230, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 231, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 232, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 233, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 17, cluster = 234, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 235, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 39, cluster = 236, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 713, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 237, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 238, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 239, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 240, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 241, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 242, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 243, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 244, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 245, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 246, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 247, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 248, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 249, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 250, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text"+ , fragmentLine = 7+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 0, y_origin = -4484, x_size = 17973, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 71, cluster = 252, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 253, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 254, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 255, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 256, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 257, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 258, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 259, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 260, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 261, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 262, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 263, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 264, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 265, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 75, cluster = 266, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 571, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 267, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 268, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 269, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 270, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 271, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 272, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 273, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 274, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 275, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 276, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 277, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 89, cluster = 278, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 488, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 279, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 280, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 281, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 282, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 283, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 284, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 285, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 286, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 287, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 89, cluster = 288, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 488, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 289, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 290, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 291, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 292, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text"+ , fragmentLine = 8+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 0, y_origin = -5605, x_size = 18971, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 72, cluster = 294, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 295, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 296, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 297, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 298, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 299, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 300, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 301, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 302, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 303, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 304, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 305, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 306, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 307, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 308, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 309, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 310, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 311, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 312, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 313, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 314, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 315, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 73, cluster = 316, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 317, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 74, cluster = 318, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 319, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 320, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 321, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 322, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 323, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 324, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 325, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 326, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 327, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 328, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 329, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 330, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 331, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 332, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 333, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 334, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 335, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 336, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 331, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 17, cluster = 337, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ }+)+, (Continue, ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 19199, y_size = -3363}+ , paragraphFragments =+ [ Fragment+ { fragmentUserData = "text"+ , fragmentLine = 9+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 17239, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 40, cluster = 339, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 580, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 91, cluster = 340, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 490, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 341, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 342, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 343, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 344, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 345, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 346, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 347, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 348, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 349, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 350, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 351, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 352, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 353, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 354, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 355, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 356, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 357, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 358, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 359, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 360, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 361, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 362, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 363, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 364, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 365, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 366, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 367, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 368, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 369, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 370, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 371, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 372, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 373, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 374, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 375, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text"+ , fragmentLine = 10+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 0, y_origin = -1121, x_size = 19199, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 83, cluster = 377, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 378, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 379, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 380, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 381, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 382, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 383, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 384, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 15, cluster = 385, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 386, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 387, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 388, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 389, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 390, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 391, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 392, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 393, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 394, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 395, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 396, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 397, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 398, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 399, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 400, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 401, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 402, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 403, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 404, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 405, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 431, cluster = 406, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 1033, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 409, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 410, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 411, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 412, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 413, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 414, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 415, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 416, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 417, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 418, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 419, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 420, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text"+ , fragmentLine = 11+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 0, y_origin = -2242, x_size = 12076, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 80, cluster = 422, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 423, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 424, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 425, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 426, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 427, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 428, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 429, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 430, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 431, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 432, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 433, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 434, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 435, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 436, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 437, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 438, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 439, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 440, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 441, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 442, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 69, cluster = 443, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 444, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 445, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 446, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 447, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 17, cluster = 448, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ }+)+]
+ .golden/paragraphLayout/arabicFiller20em.golden view
@@ -0,0 +1,235 @@+ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 19850, y_size = -6000}+ , spanLayouts = [+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = NoEdge, boxStartEdge = SpacedEdge 0, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 19850, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 283, cluster = 93, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 388, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1075, cluster = 89, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 564, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 321, cluster = 87, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 770, cluster = 85, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 479, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 286, cluster = 83, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 955, cluster = 81, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 80, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 535, cluster = 78, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 714, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 840, cluster = 76, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 916, cluster = 74, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 524, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 321, cluster = 72, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 409, cluster = 70, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 69, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 67, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 336, cluster = 65, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 334, cluster = 63, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 336, cluster = 61, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 773, cluster = 59, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 479, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 58, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 702, cluster = 56, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 1248, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 454, cluster = 54, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 319, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 770, cluster = 52, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 479, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 51, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 90, cluster = 50, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 535, cluster = 48, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 714, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 920, cluster = 46, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 483, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 45, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 924, cluster = 43, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 448, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 660, cluster = 41, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 531, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 940, cluster = 39, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 626, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 38, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 283, cluster = 36, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 388, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 34, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 732, cluster = 32, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 689, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 765, cluster = 30, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 478, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 389, cluster = 28, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 955, cluster = 26, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 25, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 992, cluster = 23, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 726, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 659, cluster = 21, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 531, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 409, cluster = 19, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 307, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 389, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 14, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 502, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 657, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1075, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 564, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 770, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 479, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 288, cluster = 4, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -1500, x_size = 18895, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 90, cluster = 191, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 517, cluster = 189, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 839, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 286, cluster = 187, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 432, cluster = 185, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 265, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 183, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 336, cluster = 181, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 381, cluster = 179, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 314, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 920, cluster = 177, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 483, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 176, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 174, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 937, cluster = 172, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 316, cluster = 170, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 840, cluster = 168, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 394, cluster = 166, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 432, cluster = 164, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 265, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 286, cluster = 162, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 161, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 544, cluster = 159, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 919, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 316, cluster = 157, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 359, cluster = 155, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 827, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 477, cluster = 153, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 286, cluster = 151, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 150, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 644, cluster = 148, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 288, cluster = 146, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 145, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1087, cluster = 141, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 949, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 297, cluster = 139, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 138, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 93, cluster = 137, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1275, cluster = 133, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 726, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 955, cluster = 131, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 130, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 935, cluster = 128, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 476, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 336, cluster = 126, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 407, cluster = 124, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 122, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 323, cluster = 120, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 477, cluster = 118, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 286, cluster = 116, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 115, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 113, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 359, cluster = 111, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 827, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 407, cluster = 109, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 454, cluster = 107, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 319, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 808, cluster = 105, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 451, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 104, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 955, cluster = 102, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 101, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 90, cluster = 100, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1275, cluster = 96, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 726, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 3+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -3000, x_size = 19162, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 935, cluster = 280, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 476, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 606, cluster = 278, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 663, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 796, cluster = 276, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 442, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 710, cluster = 274, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 862, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 477, cluster = 272, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 286, cluster = 270, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 269, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1275, cluster = 265, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 726, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 264, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 90, cluster = 263, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 660, cluster = 261, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 531, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 636, cluster = 259, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 634, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1064, cluster = 255, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 518, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 286, cluster = 253, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 252, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 432, cluster = 250, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 265, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 248, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 765, cluster = 246, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 478, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 715, cluster = 244, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 855, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 955, cluster = 242, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 241, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 502, cluster = 239, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 657, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 297, cluster = 237, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 236, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1311, cluster = 232, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 575, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 773, cluster = 230, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 479, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 229, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 93, cluster = 228, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1247, cluster = 224, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 890, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 624, cluster = 222, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 634, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 221, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 219, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 920, cluster = 217, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 483, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 216, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1396, cluster = 214, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 283, cluster = 212, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 388, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 210, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 321, cluster = 208, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 362, cluster = 206, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 827, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 477, cluster = 204, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 286, cluster = 202, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 201, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 502, cluster = 199, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 657, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 197, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 840, cluster = 195, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 808, cluster = 193, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 451, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 4+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = SpacedEdge 0, boxStartEdge = NoEdge, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -4500, x_size = 14595, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 90, cluster = 356, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1204, cluster = 352, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 726, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 350, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 765, cluster = 348, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 478, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 477, cluster = 346, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 286, cluster = 344, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 343, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 935, cluster = 341, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 476, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 409, cluster = 339, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 286, cluster = 337, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 659, cluster = 335, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 531, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 389, cluster = 333, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 955, cluster = 331, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 330, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 328, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 920, cluster = 326, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 483, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 297, cluster = 324, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 323, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 502, cluster = 321, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 657, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 297, cluster = 319, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 318, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 93, cluster = 317, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 912, cluster = 315, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 646, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 394, cluster = 313, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 955, cluster = 311, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 310, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 494, cluster = 308, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 702, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1660, cluster = 304, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 0, y_advance = 0, x_offset = 115, y_offset = 80})+ , (GlyphInfo {codepoint = 916, cluster = 304, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 524, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 606, cluster = 302, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 663, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 321, cluster = 300, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 394, cluster = 298, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 955, cluster = 296, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 295, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 935, cluster = 293, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 476, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 334, cluster = 291, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 916, cluster = 289, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 524, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 336, cluster = 287, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 937, cluster = 285, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 477, cluster = 283, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ]}
+ .golden/paragraphLayout/czechHello.golden view
@@ -0,0 +1,29 @@+ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 5274, y_size = -1121}+ , spanLayouts = [+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 5274, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 36, cluster = 5, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 663, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 75, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 571, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 15, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 10, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 89, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 488, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 246, cluster = 13, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 16, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 4, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 276, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ]}
+ .golden/paragraphLayout/czechHelloParagraphNarrow.golden view
@@ -0,0 +1,72 @@+ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 1234, y_size = -5605}+ , spanLayouts = [+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = NoEdge, boxStartEdge = SpacedEdge 0, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 1234, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 36, cluster = 5, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 663, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 75, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 571, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -1121, x_size = 1089, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 82, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 15, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 3+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -2242, x_size = 948, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 86, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 89, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 502, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 4+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -3363, x_size = 961, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 246, cluster = 13, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 5+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = SpacedEdge 0, boxStartEdge = NoEdge, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -4484, x_size = 835, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 72, cluster = 16, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 4, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 276, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ]}
+ .golden/paragraphLayout/czechHelloParagraphUltraNarrow.golden view
@@ -0,0 +1,138 @@+ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 663, y_size = -12331}+ , spanLayouts = [+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = NoEdge, boxStartEdge = SpacedEdge 0, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 663, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 36, cluster = 5, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 663, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -1121, x_size = 571, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 75, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 571, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 3+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -2242, x_size = 590, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 82, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 4+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -3363, x_size = 253, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 77, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 5+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -4484, x_size = 246, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 15, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 6+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -5605, x_size = 446, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 86, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 7+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -6726, x_size = 502, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 89, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 502, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 8+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -7847, x_size = 559, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 246, cluster = 13, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 9+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -8968, x_size = 402, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 87, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 10+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -10089, x_size = 559, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 72, cluster = 16, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 11+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = SpacedEdge 0, boxStartEdge = NoEdge, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -11210, x_size = 276, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 4, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 276, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ]}
+ .golden/paragraphLayout/devanagari.golden view
@@ -0,0 +1,40 @@+ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 8640, y_size = -1630}+ , spanLayouts = [+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 8640, y_size = -1630}+ , fragmentPen = (0, -1171)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 382, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 555, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 715, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 289, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 397, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 532, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 20, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 250, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 382, cluster = 21, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 555, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 715, cluster = 24, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 289, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 397, cluster = 30, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 532, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 33, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 250, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 618, cluster = 34, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 583, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 43, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 250, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 366, cluster = 44, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 655, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 813, cluster = 44, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 0, y_advance = 0, x_offset = -332, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 53, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 250, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 361, cluster = 54, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 845, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 407, cluster = 54, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 0, y_advance = 0, x_offset = -635, y_offset = 0})+ , (GlyphInfo {codepoint = 361, cluster = 60, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 845, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 407, cluster = 60, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 0, y_advance = 0, x_offset = -635, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 66, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 250, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 606, cluster = 67, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 587, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 76, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 250, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 715, cluster = 77, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 289, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 679, cluster = 83, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 584, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 411, cluster = 83, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 0, y_advance = 0, x_offset = -465, y_offset = 0})+ ]+ }+ ]+ ]}
+ .golden/paragraphLayout/devanagariAccent.golden view
@@ -0,0 +1,19 @@+ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 645, y_size = -1000}+ , spanLayouts = [+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 645, y_size = -1000}+ , fragmentPen = (0, -500)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 529, cluster = 0, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 645, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 424, cluster = 0, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 0, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ]}
+ .golden/paragraphLayout/devanagariPrefixedAccent.golden view
@@ -0,0 +1,18 @@+ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 0, y_size = -1000}+ , spanLayouts = [+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 0, y_size = -1000}+ , fragmentPen = (0, -500)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 424, cluster = 1, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 0, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ]}
+ .golden/paragraphLayout/hardBreaksLTR.golden view
@@ -0,0 +1,149 @@+ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 4305, y_size = -10089}+ , spanLayouts = [+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = NoEdge, boxStartEdge = SpacedEdge 0, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 1563, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 77, cluster = 1, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 2, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 3, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 4, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 5, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -1121, x_size = 3357, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 77, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 10, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 13, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 14, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 16, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 18, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 19, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 20, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 3+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -2242, x_size = 1563, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 77, cluster = 22, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 23, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 24, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 25, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 26, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 27, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 4+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -3363, x_size = 4305, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 80, cluster = 29, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 30, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 31, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 32, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 33, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 5+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -4484, x_size = 861, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 80, cluster = 34, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 6+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -5605, x_size = 1563, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 77, cluster = 37, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 38, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 39, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 40, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 41, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 42, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 7+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -6726, x_size = 0, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ []+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 8+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -7847, x_size = 3675, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 80, cluster = 45, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 46, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 47, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 48, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 49, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 9+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = SpacedEdge 0, boxStartEdge = NoEdge, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -8968, x_size = 1722, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 80, cluster = 51, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 52, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ]}
+ .golden/paragraphLayout/hardBreaksRTL.golden view
@@ -0,0 +1,150 @@+ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 5852, y_size = -13500}+ , spanLayouts = [+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = NoEdge, boxStartEdge = SpacedEdge 0, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 2808, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 642, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 642, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 642, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 642, cluster = 5, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 642, cluster = 3, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 642, cluster = 1, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -1500, x_size = 5852, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 642, cluster = 37, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 642, cluster = 35, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 642, cluster = 33, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 642, cluster = 31, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 642, cluster = 29, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 642, cluster = 27, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 26, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 642, cluster = 24, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 642, cluster = 22, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 642, cluster = 20, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 642, cluster = 18, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 642, cluster = 16, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 642, cluster = 14, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 3+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -3000, x_size = 2808, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 642, cluster = 50, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 642, cluster = 48, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 642, cluster = 46, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 642, cluster = 44, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 642, cluster = 42, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 642, cluster = 40, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 4+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -4500, x_size = 4884, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 359, cluster = 63, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 827, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 359, cluster = 61, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 827, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 359, cluster = 59, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 827, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 359, cluster = 57, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 827, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 359, cluster = 55, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 827, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 370, cluster = 53, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 749, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 5+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -6000, x_size = 1211, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 687, cluster = 65, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 1211, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 6+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -7500, x_size = 2808, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 642, cluster = 79, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 642, cluster = 77, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 642, cluster = 75, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 642, cluster = 73, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 642, cluster = 71, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 642, cluster = 69, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 7+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -9000, x_size = 0, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ []+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 8+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -10500, x_size = 4156, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 687, cluster = 90, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 1211, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 370, cluster = 88, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 749, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 87, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 687, cluster = 85, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 1211, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 370, cluster = 83, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 749, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 9+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = SpacedEdge 0, boxStartEdge = NoEdge, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -12000, x_size = 1960, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 687, cluster = 95, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 1211, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 370, cluster = 93, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 749, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ]}
+ .golden/paragraphLayout/ligature.golden view
@@ -0,0 +1,26 @@+ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 4672, y_size = -1121}+ , spanLayouts = [+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 4672, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 76, cluster = 0, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 1, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 2, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 431, cluster = 3, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 1033, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 10, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ]}
+ .golden/paragraphLayout/ligatureParagraphBreak1.golden view
@@ -0,0 +1,49 @@+ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 2162, y_size = -3363}+ , spanLayouts = [+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = NoEdge, boxStartEdge = SpacedEdge 0, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 2162, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 76, cluster = 0, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 1, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 2, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 426, cluster = 3, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 776, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -1121, x_size = 2104, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 76, cluster = 5, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 3+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = SpacedEdge 0, boxStartEdge = NoEdge, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -2242, x_size = 402, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 87, cluster = 10, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ]}
+ .golden/paragraphLayout/ligatureParagraphBreak2.golden view
@@ -0,0 +1,49 @@+ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 1772, y_size = -3363}+ , spanLayouts = [+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = NoEdge, boxStartEdge = SpacedEdge 0, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 1772, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 76, cluster = 0, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 1, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 2, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 73, cluster = 3, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -1121, x_size = 1361, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 428, cluster = 4, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 643, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 3+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = SpacedEdge 0, boxStartEdge = NoEdge, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -2242, x_size = 1535, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 72, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 10, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ]}
+ .golden/paragraphLayout/lineHeightLarger.golden view
@@ -0,0 +1,18 @@+ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 522, y_size = -1600}+ , spanLayouts = [+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 522, y_size = -1600}+ , fragmentPen = (0, -1172)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 68, cluster = 3, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ]}
+ .golden/paragraphLayout/lineHeightNormal.golden view
@@ -0,0 +1,18 @@+ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 522, y_size = -1121}+ , spanLayouts = [+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 522, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 68, cluster = 3, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ]}
+ .golden/paragraphLayout/lineHeightSmaller.golden view
@@ -0,0 +1,18 @@+ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 522, y_size = -599}+ , spanLayouts = [+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 522, y_size = -599}+ , fragmentPen = (0, -671)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 68, cluster = 3, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ]}
+ .golden/paragraphLayout/loremIpsum100em.golden view
@@ -0,0 +1,480 @@+ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 98954, y_size = -3363}+ , spanLayouts = [+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = NoEdge, boxStartEdge = SpacedEdge 0, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 95412, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 47, cluster = 4, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 507, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 5, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 10, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 13, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 14, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 16, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 18, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 19, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 20, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 21, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 22, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 23, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 24, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 25, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 26, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 27, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 28, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 29, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 15, cluster = 30, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 31, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 32, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 33, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 34, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 35, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 36, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 37, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 38, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 39, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 40, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 41, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 42, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 43, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 44, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 45, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 46, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 47, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 48, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 49, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 50, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 51, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 52, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 74, cluster = 53, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 54, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 55, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 56, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 57, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 58, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 15, cluster = 59, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 60, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 61, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 62, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 63, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 64, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 65, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 66, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 67, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 68, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 69, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 70, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 71, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 72, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 73, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 74, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 75, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 76, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 77, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 78, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 79, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 80, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 81, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 82, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 83, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 84, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 85, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 86, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 87, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 88, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 89, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 90, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 91, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 92, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 93, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 94, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 95, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 96, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 97, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 98, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 69, cluster = 99, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 100, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 101, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 102, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 103, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 104, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 105, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 106, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 107, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 108, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 109, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 110, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 111, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 112, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 113, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 114, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 115, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 74, cluster = 116, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 117, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 118, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 119, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 120, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 121, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 122, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 123, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 124, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 125, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 17, cluster = 126, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 127, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 56, cluster = 128, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 688, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 129, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 130, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 131, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 132, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 133, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 134, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 135, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 136, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 137, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 138, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 139, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 140, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 141, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 142, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 143, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 144, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 89, cluster = 145, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 488, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 146, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 147, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 148, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 149, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 150, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 15, cluster = 151, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 152, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 153, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 154, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 155, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 156, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 157, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 158, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 159, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 160, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 161, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 162, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 163, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 164, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 165, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 166, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 91, cluster = 167, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 490, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 168, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 169, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 170, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 171, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 172, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 173, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 174, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 175, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 176, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 177, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 178, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 179, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 180, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 181, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 182, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 183, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 184, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 185, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 186, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 187, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 188, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 69, cluster = 189, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 190, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 191, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 192, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 193, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 194, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 195, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 196, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 197, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 198, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 199, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 200, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 201, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 202, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 203, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 204, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 205, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 206, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 207, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 208, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 209, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 210, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 211, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 91, cluster = 212, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 511, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 213, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 214, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 215, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -1121, x_size = 98954, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 70, cluster = 217, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 218, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 219, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 220, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 221, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 222, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 223, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 224, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 225, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 226, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 227, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 228, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 229, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 230, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 231, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 232, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 233, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 17, cluster = 234, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 235, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 39, cluster = 236, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 713, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 237, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 238, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 239, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 240, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 241, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 242, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 243, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 244, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 245, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 246, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 247, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 248, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 249, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 250, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 251, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 252, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 253, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 254, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 255, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 256, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 257, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 258, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 259, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 260, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 261, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 262, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 263, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 264, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 265, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 75, cluster = 266, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 571, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 267, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 268, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 269, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 270, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 271, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 272, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 273, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 274, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 275, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 276, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 277, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 89, cluster = 278, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 488, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 279, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 280, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 281, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 282, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 283, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 284, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 285, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 286, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 287, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 89, cluster = 288, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 488, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 289, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 290, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 291, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 292, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 293, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 294, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 295, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 296, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 297, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 298, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 299, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 300, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 301, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 302, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 303, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 304, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 305, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 306, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 307, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 308, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 309, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 310, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 311, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 312, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 313, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 314, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 315, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 73, cluster = 316, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 317, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 74, cluster = 318, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 319, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 320, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 321, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 322, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 323, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 324, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 325, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 326, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 327, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 328, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 329, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 330, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 331, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 332, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 333, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 334, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 335, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 336, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 331, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 17, cluster = 337, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 338, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 40, cluster = 339, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 580, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 91, cluster = 340, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 490, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 341, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 342, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 343, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 344, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 345, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 346, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 347, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 348, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 349, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 350, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 351, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 352, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 353, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 354, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 355, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 356, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 357, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 358, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 359, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 360, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 361, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 362, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 363, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 364, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 365, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 366, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 367, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 368, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 369, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 370, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 371, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 372, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 373, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 374, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 375, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 376, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 377, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 378, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 379, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 380, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 381, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 382, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 383, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 384, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 15, cluster = 385, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 386, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 387, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 388, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 389, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 390, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 391, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 392, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 393, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 394, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 395, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 396, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 397, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 398, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 399, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 400, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 401, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 402, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 403, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 404, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 405, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 431, cluster = 406, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 1033, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 409, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 410, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 411, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 412, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 413, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 414, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 415, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 416, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 417, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 418, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 419, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 420, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 421, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 422, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 423, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 424, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 425, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 426, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 427, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 428, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 429, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 430, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 431, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 432, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 433, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 434, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 435, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 436, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 437, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 438, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 439, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 3+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = SpacedEdge 0, boxStartEdge = NoEdge, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -2242, x_size = 4041, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 79, cluster = 441, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 442, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 69, cluster = 443, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 444, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 445, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 446, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 447, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 17, cluster = 448, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ]}
+ .golden/paragraphLayout/loremIpsum20em.golden view
@@ -0,0 +1,560 @@+ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 19791, y_size = -12331}+ , spanLayouts = [+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = NoEdge, boxStartEdge = SpacedEdge 0, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 18310, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 47, cluster = 4, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 507, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 5, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 10, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 13, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 14, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 16, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 18, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 19, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 20, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 21, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 22, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 23, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 24, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 25, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 26, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 27, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 28, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 29, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 15, cluster = 30, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 31, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 32, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 33, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 34, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 35, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 36, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 37, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 38, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 39, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 40, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 41, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 42, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -1121, x_size = 17443, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 68, cluster = 44, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 45, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 46, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 47, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 48, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 49, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 50, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 51, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 52, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 74, cluster = 53, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 54, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 55, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 56, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 57, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 58, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 15, cluster = 59, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 60, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 61, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 62, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 63, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 64, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 65, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 66, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 67, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 68, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 69, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 70, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 71, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 72, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 73, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 74, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 75, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 76, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 77, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 78, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 79, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 80, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 81, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 3+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -2242, x_size = 19791, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 76, cluster = 83, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 84, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 85, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 86, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 87, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 88, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 89, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 90, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 91, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 92, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 93, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 94, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 95, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 96, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 97, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 98, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 69, cluster = 99, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 100, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 101, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 102, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 103, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 104, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 105, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 106, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 107, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 108, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 109, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 110, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 111, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 112, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 113, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 114, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 115, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 74, cluster = 116, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 117, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 118, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 119, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 120, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 121, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 122, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 123, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 124, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 125, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 17, cluster = 126, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 4+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -3363, x_size = 17562, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 56, cluster = 128, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 688, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 129, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 130, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 131, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 132, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 133, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 134, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 135, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 136, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 137, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 138, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 139, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 140, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 141, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 142, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 143, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 144, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 89, cluster = 145, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 488, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 146, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 147, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 148, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 149, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 150, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 15, cluster = 151, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 152, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 153, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 154, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 155, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 156, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 157, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 158, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 159, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 160, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 161, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 162, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 163, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 164, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 5+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -4484, x_size = 18769, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 72, cluster = 166, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 91, cluster = 167, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 490, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 168, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 169, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 170, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 171, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 172, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 173, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 174, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 175, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 176, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 177, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 178, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 179, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 180, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 181, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 182, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 183, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 184, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 185, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 186, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 187, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 188, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 69, cluster = 189, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 190, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 191, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 192, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 193, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 194, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 195, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 196, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 197, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 198, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 199, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 200, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 201, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 202, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 203, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 204, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 205, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 206, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 207, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 208, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 209, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 6+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -5605, x_size = 19226, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 72, cluster = 211, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 91, cluster = 212, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 511, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 213, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 214, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 215, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 216, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 217, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 218, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 219, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 220, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 221, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 222, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 223, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 224, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 225, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 226, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 227, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 228, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 229, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 230, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 231, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 232, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 233, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 17, cluster = 234, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 235, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 39, cluster = 236, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 713, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 237, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 238, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 239, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 240, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 241, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 242, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 243, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 244, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 245, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 246, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 247, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 248, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 249, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 250, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 7+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -6726, x_size = 17973, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 71, cluster = 252, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 253, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 254, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 255, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 256, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 257, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 258, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 259, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 260, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 261, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 262, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 263, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 264, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 265, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 75, cluster = 266, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 571, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 267, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 268, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 269, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 270, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 271, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 272, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 273, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 274, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 275, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 276, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 277, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 89, cluster = 278, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 488, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 279, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 280, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 281, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 282, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 283, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 284, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 285, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 286, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 287, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 89, cluster = 288, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 488, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 289, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 290, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 291, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 292, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 8+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -7847, x_size = 18971, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 72, cluster = 294, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 295, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 296, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 297, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 298, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 299, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 300, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 301, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 302, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 303, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 304, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 305, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 306, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 307, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 308, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 309, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 310, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 311, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 312, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 313, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 314, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 315, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 73, cluster = 316, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 317, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 74, cluster = 318, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 319, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 320, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 321, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 322, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 323, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 324, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 325, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 326, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 327, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 328, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 329, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 330, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 331, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 332, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 333, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 334, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 335, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 336, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 331, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 17, cluster = 337, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 9+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -8968, x_size = 17239, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 40, cluster = 339, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 580, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 91, cluster = 340, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 490, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 341, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 342, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 343, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 344, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 345, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 346, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 347, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 348, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 349, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 350, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 351, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 352, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 353, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 354, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 355, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 356, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 357, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 358, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 359, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 360, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 361, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 362, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 363, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 364, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 365, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 366, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 367, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 368, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 369, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 370, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 371, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 372, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 373, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 374, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 375, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 10+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -10089, x_size = 19199, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 83, cluster = 377, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 378, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 379, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 380, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 381, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 382, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 383, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 384, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 15, cluster = 385, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 386, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 387, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 388, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 389, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 390, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 391, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 392, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 393, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 394, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 395, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 396, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 397, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 398, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 399, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 400, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 401, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 402, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 403, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 404, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 405, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 431, cluster = 406, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 1033, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 409, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 410, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 411, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 412, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 413, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 414, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 415, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 416, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 417, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 418, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 419, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 420, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 11+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = SpacedEdge 0, boxStartEdge = NoEdge, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -11210, x_size = 12076, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 80, cluster = 422, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 423, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 424, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 425, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 426, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 427, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 428, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 429, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 430, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 431, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 432, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 433, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 434, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 435, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 436, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 437, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 438, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 439, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 440, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 441, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 442, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 69, cluster = 443, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 444, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 445, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 446, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 447, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 17, cluster = 448, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ]}
+ .golden/paragraphLayout/manySpaces.golden view
@@ -0,0 +1,74 @@+ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 3132, y_size = -4484}+ , spanLayouts = [+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = NoEdge, boxStartEdge = SpacedEdge 0, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 3132, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 68, cluster = 3, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 4, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 5, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -1121, x_size = 3132, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 68, cluster = 10, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 13, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 14, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 3+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -2242, x_size = 3132, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 68, cluster = 18, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 19, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 20, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 21, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 22, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 23, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 4+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = SpacedEdge 0, boxStartEdge = NoEdge, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -3363, x_size = 3132, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 68, cluster = 27, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 28, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 29, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 30, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 31, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 32, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ]}
+ .golden/paragraphLayout/mixedLanguageLTR.golden view
@@ -0,0 +1,45 @@+ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 6113, y_size = -1121}+ , spanLayouts = [+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 4837, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 77, cluster = 4, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 5, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 10, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 92, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 497, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 15, cluster = 13, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 14, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 4837, y_origin = 0, x_size = 1276, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 0, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 500, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 0, cluster = 18, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 500, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 4, cluster = 21, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 276, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ]}
+ .golden/paragraphLayout/mixedScriptWords.golden view
@@ -0,0 +1,309 @@+ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 5447, y_size = -6726}+ , spanLayouts = [+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = NoEdge, boxStartEdge = SpacedEdge 0, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 777, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 77, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 777, y_origin = 0, x_size = 2335, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 758, cluster = 10, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 758, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 758, cluster = 14, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 3112, y_origin = 0, x_size = 777, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 77, cluster = 16, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 18, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -1121, x_size = 777, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 77, cluster = 20, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 21, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 22, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 777, y_origin = -1121, x_size = 2335, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 758, cluster = 23, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 758, cluster = 25, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 758, cluster = 27, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 3112, y_origin = -1121, x_size = 777, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 77, cluster = 29, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 30, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 31, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 3+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -2242, x_size = 2335, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 758, cluster = 33, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 758, cluster = 35, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 758, cluster = 37, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 3+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 2335, y_origin = -2242, x_size = 777, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 77, cluster = 39, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 40, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 41, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 3+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 3112, y_origin = -2242, x_size = 2335, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 758, cluster = 42, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 758, cluster = 44, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 758, cluster = 46, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 4+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -3363, x_size = 2335, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 758, cluster = 49, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 758, cluster = 51, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 758, cluster = 53, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 4+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 2335, y_origin = -3363, x_size = 777, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 77, cluster = 55, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 56, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 57, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 4+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 3112, y_origin = -3363, x_size = 2335, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 758, cluster = 58, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 758, cluster = 60, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 758, cluster = 62, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 5+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -4484, x_size = 253, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 77, cluster = 65, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 5+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 253, y_origin = -4484, x_size = 763, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 758, cluster = 66, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 5+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 1016, y_origin = -4484, x_size = 737, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 77, cluster = 68, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 69, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 70, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 5+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 1753, y_origin = -4484, x_size = 763, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 758, cluster = 71, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 5+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 2516, y_origin = -4484, x_size = 484, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 77, cluster = 73, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 74, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 5+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 3000, y_origin = -4484, x_size = 763, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 758, cluster = 75, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 5+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 3763, y_origin = -4484, x_size = 253, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 77, cluster = 77, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 5+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 4016, y_origin = -4484, x_size = 763, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 758, cluster = 78, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 6+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -5605, x_size = 763, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 758, cluster = 81, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 6+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 763, y_origin = -5605, x_size = 253, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 77, cluster = 83, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 6+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = SpacedEdge 0, boxStartEdge = NoEdge, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 1016, y_origin = -5605, x_size = 763, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 758, cluster = 84, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ]}
+ .golden/paragraphLayout/spannedArabicFiller20em.golden view
@@ -0,0 +1,378 @@+ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 19850, y_size = -6000}+ , spanLayouts = [+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 12652, y_origin = 0, x_size = 7198, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 3, cluster = 38, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 283, cluster = 36, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 388, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 34, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 732, cluster = 32, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 689, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 765, cluster = 30, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 478, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 389, cluster = 28, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 955, cluster = 26, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 25, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 992, cluster = 23, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 726, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 659, cluster = 21, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 531, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 409, cluster = 19, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 307, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 389, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 14, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 502, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 657, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1075, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 564, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 770, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 479, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 288, cluster = 4, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 7060, y_origin = 0, x_size = 5592, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 702, cluster = 56, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 1248, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 454, cluster = 54, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 319, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 770, cluster = 52, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 479, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 51, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 90, cluster = 50, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 535, cluster = 48, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 714, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 920, cluster = 46, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 483, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 45, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 924, cluster = 43, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 448, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 660, cluster = 41, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 531, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 940, cluster = 39, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 626, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 7060, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 283, cluster = 93, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 388, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1075, cluster = 89, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 564, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 321, cluster = 87, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 770, cluster = 85, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 479, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 286, cluster = 83, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 955, cluster = 81, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 80, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 535, cluster = 78, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 714, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 840, cluster = 76, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 916, cluster = 74, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 524, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 321, cluster = 72, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 409, cluster = 70, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 69, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 67, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 336, cluster = 65, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 334, cluster = 63, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 336, cluster = 61, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 773, cluster = 59, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 479, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 58, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 14850, y_origin = -1500, x_size = 4045, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 293, cluster = 113, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 359, cluster = 111, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 827, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 407, cluster = 109, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 454, cluster = 107, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 319, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 808, cluster = 105, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 451, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 104, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 955, cluster = 102, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 101, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 90, cluster = 100, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1275, cluster = 96, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 726, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 9168, y_origin = -1500, x_size = 5682, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 3, cluster = 145, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1087, cluster = 141, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 949, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 297, cluster = 139, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 138, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 93, cluster = 137, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1275, cluster = 133, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 726, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 955, cluster = 131, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 130, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 935, cluster = 128, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 476, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 336, cluster = 126, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 407, cluster = 124, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 122, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 323, cluster = 120, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 477, cluster = 118, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 286, cluster = 116, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 115, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 3213, y_origin = -1500, x_size = 5955, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 293, cluster = 174, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 937, cluster = 172, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 316, cluster = 170, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 840, cluster = 168, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 394, cluster = 166, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 432, cluster = 164, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 265, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 286, cluster = 162, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 161, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 544, cluster = 159, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 919, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 316, cluster = 157, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 359, cluster = 155, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 827, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 477, cluster = 153, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 286, cluster = 151, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 150, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 644, cluster = 148, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 288, cluster = 146, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = NoEdge, boxStartEdge = SpacedEdge 0, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -1500, x_size = 3213, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 90, cluster = 191, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 517, cluster = 189, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 839, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 286, cluster = 187, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 432, cluster = 185, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 265, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 183, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 336, cluster = 181, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 381, cluster = 179, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 314, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 920, cluster = 177, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 483, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 176, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 3+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = SpacedEdge 0, boxStartEdge = NoEdge, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 14300, y_origin = -3000, x_size = 4862, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 3, cluster = 216, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1396, cluster = 214, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 283, cluster = 212, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 388, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 210, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 321, cluster = 208, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 362, cluster = 206, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 827, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 477, cluster = 204, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 286, cluster = 202, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 201, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 502, cluster = 199, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 657, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 197, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 840, cluster = 195, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 808, cluster = 193, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 451, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 3+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 10225, y_origin = -3000, x_size = 4075, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 1311, cluster = 232, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 575, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 773, cluster = 230, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 479, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 229, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 93, cluster = 228, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1247, cluster = 224, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 890, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 624, cluster = 222, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 634, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 221, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 219, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 920, cluster = 217, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 483, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 3+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 3898, y_origin = -3000, x_size = 6327, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 3, cluster = 264, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 90, cluster = 263, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 660, cluster = 261, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 531, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 636, cluster = 259, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 634, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1064, cluster = 255, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 518, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 286, cluster = 253, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 252, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 432, cluster = 250, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 265, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 248, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 765, cluster = 246, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 478, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 715, cluster = 244, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 855, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 955, cluster = 242, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 241, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 502, cluster = 239, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 657, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 297, cluster = 237, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 236, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 3+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = NoEdge, boxStartEdge = SpacedEdge 0, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -3000, x_size = 3898, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 935, cluster = 280, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 476, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 606, cluster = 278, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 663, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 796, cluster = 276, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 442, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 710, cluster = 274, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 862, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 477, cluster = 272, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 286, cluster = 270, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 269, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1275, cluster = 265, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 726, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 4+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = SpacedEdge 0, boxStartEdge = NoEdge, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 12238, y_origin = -4500, x_size = 2357, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 935, cluster = 293, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 476, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 334, cluster = 291, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 916, cluster = 289, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 524, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 336, cluster = 287, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 937, cluster = 285, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 477, cluster = 283, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 4+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 5880, y_origin = -4500, x_size = 6358, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 3, cluster = 323, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 502, cluster = 321, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 657, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 297, cluster = 319, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 318, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 93, cluster = 317, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 912, cluster = 315, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 646, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 394, cluster = 313, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 955, cluster = 311, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 310, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 494, cluster = 308, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 702, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1660, cluster = 304, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 0, y_advance = 0, x_offset = 115, y_offset = 80})+ , (GlyphInfo {codepoint = 916, cluster = 304, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 524, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 606, cluster = 302, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 663, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 321, cluster = 300, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 394, cluster = 298, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 955, cluster = 296, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 295, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 4+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -4500, x_size = 5880, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 90, cluster = 356, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 1204, cluster = 352, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 726, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 350, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 765, cluster = 348, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 478, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 477, cluster = 346, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 286, cluster = 344, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 343, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 935, cluster = 341, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 476, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 409, cluster = 339, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 286, cluster = 337, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 659, cluster = 335, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 531, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 389, cluster = 333, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 955, cluster = 331, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 330, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 328, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 920, cluster = 326, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 483, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 297, cluster = 324, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ]}
+ .golden/paragraphLayout/spannedLoremIpsum20em.golden view
@@ -0,0 +1,838 @@+ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 19791, y_size = -12331}+ , spanLayouts = [+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 8747, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 47, cluster = 4, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 507, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 5, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 10, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 13, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 14, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 16, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 18, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 19, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 20, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 21, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 8747, y_origin = 0, x_size = 9563, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 86, cluster = 22, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 23, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 24, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 25, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 26, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 27, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 28, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 29, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 15, cluster = 30, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 31, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 32, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 33, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 34, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 35, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 36, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 37, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 38, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 39, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 40, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 41, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 42, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -1121, x_size = 8553, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 68, cluster = 44, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 45, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 46, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 47, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 48, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 49, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 50, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 51, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 52, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 74, cluster = 53, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 54, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 55, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 56, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 57, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 58, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 15, cluster = 59, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 60, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 61, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 62, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 63, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 64, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 8553, y_origin = -1121, x_size = 8890, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 71, cluster = 65, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 66, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 67, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 68, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 69, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 70, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 71, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 72, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 73, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 74, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 75, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 76, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 77, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 78, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 79, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 80, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 81, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 3+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -2242, x_size = 9114, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 76, cluster = 83, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 84, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 85, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 86, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 87, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 88, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 89, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 90, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 91, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 92, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 93, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 94, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 95, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 96, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 97, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 98, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 69, cluster = 99, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 100, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 101, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 102, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 103, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 3+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 9114, y_origin = -2242, x_size = 7467, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 72, cluster = 104, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 105, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 106, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 107, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 108, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 109, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 110, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 111, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 112, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 113, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 114, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 115, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 74, cluster = 116, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 117, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 118, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 3+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = NoEdge, boxStartEdge = SpacedEdge 0, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 16581, y_origin = -2242, x_size = 3210, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 3, cluster = 119, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 120, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 121, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 122, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 123, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 124, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 125, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 17, cluster = 126, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 4+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = SpacedEdge 0, boxStartEdge = NoEdge, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -3363, x_size = 3799, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 56, cluster = 128, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 688, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 129, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 130, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 131, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 132, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 133, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 134, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 135, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 4+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 3799, y_origin = -3363, x_size = 7878, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 68, cluster = 136, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 137, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 138, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 139, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 140, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 141, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 142, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 143, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 144, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 89, cluster = 145, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 488, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 146, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 147, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 148, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 149, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 150, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 15, cluster = 151, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 4+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = NoEdge, boxStartEdge = SpacedEdge 0, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 11677, y_origin = -3363, x_size = 5885, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 3, cluster = 152, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 153, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 154, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 155, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 156, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 157, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 158, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 159, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 160, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 161, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 162, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 163, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 164, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 5+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = SpacedEdge 0, boxStartEdge = NoEdge, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -4484, x_size = 5686, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 72, cluster = 166, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 91, cluster = 167, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 490, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 168, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 169, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 170, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 171, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 172, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 173, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 174, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 175, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 176, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 177, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 178, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 5+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 5686, y_origin = -4484, x_size = 8592, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 88, cluster = 179, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 180, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 181, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 182, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 183, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 184, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 185, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 186, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 187, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 188, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 69, cluster = 189, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 190, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 191, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 192, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 193, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 194, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 195, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 196, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 197, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 198, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 5+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = NoEdge, boxStartEdge = SpacedEdge 0, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 14278, y_origin = -4484, x_size = 4491, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 3, cluster = 199, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 200, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 201, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 202, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 203, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 204, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 205, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 206, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 207, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 208, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 209, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 6+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = SpacedEdge 0, boxStartEdge = NoEdge, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -5605, x_size = 1301, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 72, cluster = 211, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 91, cluster = 212, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 511, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 213, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 6+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 1301, y_origin = -5605, x_size = 11041, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 72, cluster = 214, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 215, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 216, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 217, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 218, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 219, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 220, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 221, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 222, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 223, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 224, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 225, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 226, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 227, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 228, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 229, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 230, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 231, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 232, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 233, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 17, cluster = 234, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 6+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 12342, y_origin = -5605, x_size = 6884, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 3, cluster = 235, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 39, cluster = 236, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 713, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 237, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 238, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 239, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 240, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 241, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 242, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 243, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 244, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 245, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 246, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 247, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 248, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 249, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 250, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 7+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -6726, x_size = 10089, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 71, cluster = 252, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 253, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 254, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 255, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 256, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 257, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 258, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 259, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 260, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 261, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 262, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 263, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 264, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 265, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 75, cluster = 266, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 571, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 267, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 268, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 269, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 270, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 271, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 272, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 273, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 7+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 10089, y_origin = -6726, x_size = 7884, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 3, cluster = 274, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 275, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 276, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 277, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 89, cluster = 278, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 488, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 279, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 280, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 281, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 282, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 283, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 284, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 285, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 286, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 287, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 89, cluster = 288, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 488, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 289, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 290, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 291, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 292, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 8+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -7847, x_size = 8158, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 72, cluster = 294, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 295, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 296, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 297, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 298, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 299, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 300, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 301, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 302, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 303, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 304, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 305, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 306, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 307, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 308, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 309, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 310, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 311, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 8+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 8158, y_origin = -7847, x_size = 6988, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 3, cluster = 312, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 313, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 314, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 315, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 73, cluster = 316, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 317, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 74, cluster = 318, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 319, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 320, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 321, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 322, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 323, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 324, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 325, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 326, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 327, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 328, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 8+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = NoEdge, boxStartEdge = SpacedEdge 0, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 15146, y_origin = -7847, x_size = 3825, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 83, cluster = 329, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 330, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 331, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 332, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 333, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 334, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 335, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 336, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 331, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 17, cluster = 337, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 9+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = SpacedEdge 0, boxStartEdge = NoEdge, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -8968, x_size = 4594, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 40, cluster = 339, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 580, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 91, cluster = 340, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 490, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 341, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 342, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 343, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 344, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 345, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 346, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 347, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 9+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 4594, y_origin = -8968, x_size = 10907, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 3, cluster = 348, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 349, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 350, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 351, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 352, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 353, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 354, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 355, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 356, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 357, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 358, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 359, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 360, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 361, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 362, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 363, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 364, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 365, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 366, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 367, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 368, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 369, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 370, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 371, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 372, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 9+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = NoEdge, boxStartEdge = SpacedEdge 0, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 15501, y_origin = -8968, x_size = 1738, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 81, cluster = 373, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 374, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 375, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 10+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = SpacedEdge 0, boxStartEdge = NoEdge, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -10089, x_size = 6426, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 83, cluster = 377, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 378, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 379, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 380, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 381, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 382, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 383, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 384, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 15, cluster = 385, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 386, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 387, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 388, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 389, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 390, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 10+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 6426, y_origin = -10089, x_size = 5590, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 3, cluster = 391, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 392, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 393, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 394, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 395, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 396, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 397, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 398, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 399, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 400, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 401, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 402, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 403, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 404, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 10+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = NoEdge, boxStartEdge = SpacedEdge 0, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 12016, y_origin = -10089, x_size = 7183, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 82, cluster = 405, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 431, cluster = 406, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 1033, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 409, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 410, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 411, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 412, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 413, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 414, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 415, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 416, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 417, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 418, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 419, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 420, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = ()+ , fragmentLine = 11+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = NoEdge, boxRightEdge = SpacedEdge 0, boxStartEdge = NoEdge, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -11210, x_size = 2652, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 80, cluster = 422, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 423, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 424, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 425, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 426, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 427, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 11+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 2652, y_origin = -11210, x_size = 5383, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 3, cluster = 428, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 429, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 430, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 431, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 432, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 433, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 434, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 435, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 436, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 437, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 438, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 439, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 440, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ,+ SpanLayout+ [ Fragment+ { fragmentUserData = ()+ , fragmentLine = 11+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = (), boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 8035, y_origin = -11210, x_size = 4041, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 79, cluster = 441, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 442, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 69, cluster = 443, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 444, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 445, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 446, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 447, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 17, cluster = 448, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ ]}
+ .golden/richParagraphLayout/hardBoxBreakLTR.golden view
@@ -0,0 +1,69 @@+ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 5855, y_size = -2242}+ , paragraphFragments =+ [ Fragment+ { fragmentUserData = "text1"+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 3333, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 68, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 69, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 69, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 10, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 69, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text2"+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = "box2", boxLeftEdge = SpacedEdge 150, boxRightEdge = NoEdge, boxStartEdge = SpacedEdge 150, boxEndEdge = NoEdge}+ , AncestorBox {boxUserData = "box1", boxLeftEdge = SpacedEdge 50, boxRightEdge = NoEdge, boxStartEdge = SpacedEdge 50, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 3533, y_origin = 0, x_size = 2222, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 68, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 69, cluster = 13, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 14, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 69, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text2"+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = "box2", boxLeftEdge = NoEdge, boxRightEdge = SpacedEdge 200, boxStartEdge = NoEdge, boxEndEdge = SpacedEdge 200}+ , AncestorBox {boxUserData = "box1", boxLeftEdge = NoEdge, boxRightEdge = SpacedEdge 100, boxStartEdge = NoEdge, boxEndEdge = SpacedEdge 100}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -1121, x_size = 2222, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 68, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 69, cluster = 18, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 19, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 69, cluster = 20, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text3"+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 2522, y_origin = -1121, x_size = 3333, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 68, cluster = 21, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 69, cluster = 22, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 23, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 69, cluster = 24, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 25, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 69, cluster = 26, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ }
+ .golden/richParagraphLayout/hardBoxBreakRTL.golden view
@@ -0,0 +1,69 @@+ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 3455, y_size = -3000}+ , paragraphFragments =+ [ Fragment+ { fragmentUserData = "text2"+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = "box2", boxLeftEdge = NoEdge, boxRightEdge = SpacedEdge 200, boxStartEdge = SpacedEdge 200, boxEndEdge = NoEdge}+ , AncestorBox {boxUserData = "box1", boxLeftEdge = NoEdge, boxRightEdge = SpacedEdge 100, boxStartEdge = SpacedEdge 100, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 1632, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 512, cluster = 24, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 839, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 22, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 389, cluster = 20, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 18, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text1"+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 1932, y_origin = 0, x_size = 1523, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 389, cluster = 16, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 14, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 389, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 10, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 389, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 286, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text3"+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 0, y_origin = -1500, x_size = 2155, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 512, cluster = 45, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 839, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 43, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 389, cluster = 41, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 39, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 389, cluster = 37, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 35, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text2"+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = "box2", boxLeftEdge = SpacedEdge 150, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = SpacedEdge 150}+ , AncestorBox {boxUserData = "box1", boxLeftEdge = SpacedEdge 50, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = SpacedEdge 50}+ ]+ , fragmentRect = Rect {x_origin = 2355, y_origin = -1500, x_size = 1000, y_size = -1500}+ , fragmentPen = (0, -1085)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 389, cluster = 33, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 293, cluster = 31, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 389, cluster = 29, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 286, cluster = 27, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ }
+ .golden/richParagraphLayout/loremIpsum20em.golden view
@@ -0,0 +1,548 @@+ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 19791, y_size = -12331}+ , paragraphFragments =+ [ Fragment+ { fragmentUserData = "text"+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 18310, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 47, cluster = 4, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 507, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 5, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 10, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 13, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 14, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 16, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 18, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 19, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 20, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 21, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 22, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 23, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 24, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 25, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 26, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 27, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 28, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 29, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 15, cluster = 30, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 31, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 32, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 33, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 34, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 35, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 36, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 37, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 38, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 39, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 40, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 41, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 42, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text"+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 0, y_origin = -1121, x_size = 17443, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 68, cluster = 44, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 45, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 46, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 47, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 48, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 49, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 50, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 51, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 52, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 74, cluster = 53, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 54, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 55, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 56, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 57, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 58, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 15, cluster = 59, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 60, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 61, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 62, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 63, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 64, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 65, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 66, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 67, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 68, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 69, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 70, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 71, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 72, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 73, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 74, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 75, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 76, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 77, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 78, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 79, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 80, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 81, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text"+ , fragmentLine = 3+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 0, y_origin = -2242, x_size = 19791, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 76, cluster = 83, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 84, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 85, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 86, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 87, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 88, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 89, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 90, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 91, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 92, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 93, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 94, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 95, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 96, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 97, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 98, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 69, cluster = 99, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 100, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 101, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 102, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 103, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 104, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 105, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 106, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 107, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 108, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 109, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 110, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 111, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 112, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 113, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 114, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 115, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 74, cluster = 116, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 117, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 118, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 119, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 120, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 121, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 122, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 123, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 124, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 125, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 17, cluster = 126, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text"+ , fragmentLine = 4+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 0, y_origin = -3363, x_size = 17562, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 56, cluster = 128, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 688, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 129, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 130, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 131, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 132, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 133, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 134, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 135, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 136, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 137, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 138, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 139, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 140, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 141, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 142, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 143, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 144, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 89, cluster = 145, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 488, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 146, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 147, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 148, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 149, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 150, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 15, cluster = 151, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 152, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 153, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 154, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 155, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 156, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 157, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 158, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 159, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 160, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 161, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 162, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 163, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 164, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text"+ , fragmentLine = 5+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 0, y_origin = -4484, x_size = 18769, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 72, cluster = 166, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 91, cluster = 167, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 490, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 168, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 169, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 170, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 171, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 172, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 173, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 174, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 175, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 176, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 177, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 178, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 179, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 180, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 181, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 182, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 183, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 184, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 185, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 186, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 187, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 188, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 69, cluster = 189, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 190, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 191, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 192, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 193, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 194, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 195, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 196, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 197, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 198, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 199, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 200, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 201, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 202, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 203, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 204, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 205, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 206, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 207, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 208, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 209, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text"+ , fragmentLine = 6+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 0, y_origin = -5605, x_size = 19226, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 72, cluster = 211, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 91, cluster = 212, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 511, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 213, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 214, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 215, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 216, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 217, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 218, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 219, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 220, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 221, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 222, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 223, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 224, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 225, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 226, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 227, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 228, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 229, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 230, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 231, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 232, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 233, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 17, cluster = 234, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 235, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 39, cluster = 236, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 713, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 237, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 238, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 239, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 240, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 241, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 242, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 243, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 244, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 245, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 246, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 247, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 248, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 249, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 250, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text"+ , fragmentLine = 7+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 0, y_origin = -6726, x_size = 17973, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 71, cluster = 252, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 253, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 254, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 255, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 256, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 257, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 258, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 259, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 260, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 261, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 262, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 263, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 264, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 265, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 75, cluster = 266, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 571, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 267, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 268, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 269, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 270, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 271, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 272, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 273, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 274, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 275, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 276, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 277, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 89, cluster = 278, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 488, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 279, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 280, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 281, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 282, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 283, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 284, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 285, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 286, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 287, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 89, cluster = 288, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 488, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 289, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 290, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 291, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 292, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text"+ , fragmentLine = 8+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 0, y_origin = -7847, x_size = 18971, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 72, cluster = 294, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 295, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 296, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 297, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 298, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 299, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 300, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 301, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 302, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 303, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 304, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 305, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 306, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 307, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 308, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 309, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 310, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 311, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 312, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 313, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 314, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 315, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 73, cluster = 316, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 317, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 74, cluster = 318, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 319, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 320, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 321, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 322, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 323, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 324, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 325, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 326, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 327, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 328, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 329, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 330, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 331, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 332, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 333, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 334, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 335, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 336, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 331, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 17, cluster = 337, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text"+ , fragmentLine = 9+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 0, y_origin = -8968, x_size = 17239, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 40, cluster = 339, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 580, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 91, cluster = 340, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 490, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 341, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 342, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 343, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 344, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 345, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 346, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 347, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 348, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 349, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 350, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 351, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 352, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 353, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 354, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 355, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 356, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 357, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 358, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 359, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 360, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 361, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 362, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 363, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 364, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 365, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 366, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 367, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 368, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 369, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 370, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 371, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 372, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 373, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 374, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 375, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text"+ , fragmentLine = 10+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 0, y_origin = -10089, x_size = 19199, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 83, cluster = 377, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 378, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 379, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 380, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 381, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 382, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 383, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 384, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 15, cluster = 385, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 386, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 387, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 388, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 389, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 390, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 391, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 392, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 393, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 394, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 395, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 396, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 397, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 398, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 399, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 400, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 401, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 402, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 403, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 404, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 405, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 431, cluster = 406, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 1033, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 409, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 410, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 411, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 412, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 413, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 414, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 415, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 416, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 417, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 418, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 419, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 420, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text"+ , fragmentLine = 11+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 0, y_origin = -11210, x_size = 12076, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 80, cluster = 422, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 423, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 424, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 425, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 426, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 427, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 428, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 429, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 430, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 431, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 432, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 433, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 434, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 435, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 436, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 437, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 438, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 439, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 440, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 441, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 442, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 69, cluster = 443, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 444, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 445, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 446, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 447, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 17, cluster = 448, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ }
+ .golden/richParagraphLayout/mixedScript.golden view
@@ -0,0 +1,127 @@+ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 15283, y_size = -1121}+ , paragraphFragments =+ [ Fragment+ { fragmentUserData = "text1"+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 777, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 77, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text1"+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 777, y_origin = 0, x_size = 2335, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 758, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 758, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 758, cluster = 13, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text2"+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = "box1", boxLeftEdge = SpacedEdge 50, boxRightEdge = NoEdge, boxStartEdge = SpacedEdge 50, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 3162, y_origin = 0, x_size = 777, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 77, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 16, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text2"+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = "box1", boxLeftEdge = NoEdge, boxRightEdge = SpacedEdge 100, boxStartEdge = NoEdge, boxEndEdge = SpacedEdge 100}+ ]+ , fragmentRect = Rect {x_origin = 3939, y_origin = 0, x_size = 2335, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 758, cluster = 18, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 758, cluster = 20, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 758, cluster = 22, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text3"+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 6374, y_origin = 0, x_size = 2335, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 758, cluster = 24, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 758, cluster = 26, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 758, cluster = 28, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text4"+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = "box2", boxLeftEdge = SpacedEdge 150, boxRightEdge = NoEdge, boxStartEdge = SpacedEdge 150, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 8859, y_origin = 0, x_size = 2335, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 758, cluster = 30, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 758, cluster = 32, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 758, cluster = 34, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text4"+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = "box2", boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 11194, y_origin = 0, x_size = 777, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 77, cluster = 36, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 37, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 38, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text4"+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = "box2", boxLeftEdge = NoEdge, boxRightEdge = SpacedEdge 200, boxStartEdge = NoEdge, boxEndEdge = SpacedEdge 200}+ ]+ , fragmentRect = Rect {x_origin = 11971, y_origin = 0, x_size = 2335, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 758, cluster = 39, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 758, cluster = 41, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 758, cluster = 43, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text5"+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 14506, y_origin = 0, x_size = 777, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 77, cluster = 45, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 46, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 47, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ }
+ .golden/richParagraphLayout/mixedScriptWrap.golden view
@@ -0,0 +1,149 @@+ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 4897, y_size = -4484}+ , paragraphFragments =+ [ Fragment+ { fragmentUserData = "text1"+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 777, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 77, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text1"+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 777, y_origin = 0, x_size = 2335, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 758, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 758, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 758, cluster = 13, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text2"+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = "box1", boxLeftEdge = SpacedEdge 50, boxRightEdge = NoEdge, boxStartEdge = SpacedEdge 50, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 3162, y_origin = 0, x_size = 777, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 77, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 16, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text2"+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = "box1", boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 3939, y_origin = 0, x_size = 763, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 758, cluster = 18, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text2"+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = "box1", boxLeftEdge = NoEdge, boxRightEdge = SpacedEdge 100, boxStartEdge = NoEdge, boxEndEdge = SpacedEdge 100}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -1121, x_size = 1549, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 758, cluster = 20, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 758, cluster = 22, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text3"+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 1649, y_origin = -1121, x_size = 2335, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 758, cluster = 24, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 758, cluster = 26, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 758, cluster = 28, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text4"+ , fragmentLine = 2+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = "box2", boxLeftEdge = SpacedEdge 150, boxRightEdge = NoEdge, boxStartEdge = SpacedEdge 150, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 4134, y_origin = -1121, x_size = 763, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 758, cluster = 30, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text4"+ , fragmentLine = 3+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = "box2", boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 0, y_origin = -2242, x_size = 1549, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 758, cluster = 32, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 758, cluster = 34, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text4"+ , fragmentLine = 3+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = "box2", boxLeftEdge = NoEdge, boxRightEdge = NoEdge, boxStartEdge = NoEdge, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 1549, y_origin = -2242, x_size = 777, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 77, cluster = 36, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 37, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 38, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text4"+ , fragmentLine = 3+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = "box2", boxLeftEdge = NoEdge, boxRightEdge = SpacedEdge 200, boxStartEdge = NoEdge, boxEndEdge = SpacedEdge 200}+ ]+ , fragmentRect = Rect {x_origin = 2326, y_origin = -2242, x_size = 2335, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 758, cluster = 39, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 758, cluster = 41, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 786, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 758, cluster = 43, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 763, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text5"+ , fragmentLine = 4+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 0, y_origin = -3363, x_size = 777, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 77, cluster = 45, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 46, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 262, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 77, cluster = 47, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ }
+ .golden/richParagraphLayout/mixedSizes.golden view
@@ -0,0 +1,80 @@+ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 8634, y_size = -1121}+ , paragraphFragments =+ [ Fragment+ { fragmentUserData = "bigText1"+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 1651, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 69, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 74, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "smallText1"+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = "smallBox1", boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 1651, y_origin = 0, x_size = 1956, y_size = -841}+ , fragmentPen = (0, -699)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 86, cluster = 10, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 335, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 646, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 13, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 205, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 14, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 205, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 173, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "bigText2"+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 3607, y_origin = 0, x_size = 1651, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 69, cluster = 16, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 74, cluster = 18, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 19, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "smallText2"+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = "smallBox2", boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 5258, y_origin = 0, x_size = 1956, y_size = -841}+ , fragmentPen = (0, -699)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 86, cluster = 20, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 335, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 21, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 646, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 22, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 23, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 205, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 24, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 205, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 25, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 173, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "bigText3"+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 7214, y_origin = 0, x_size = 1420, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 69, cluster = 26, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 27, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 74, cluster = 28, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ }
+ .golden/richParagraphLayout/nestedBoxes.golden view
@@ -0,0 +1,69 @@+ParagraphLayout+ { paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 14576, y_size = -1121}+ , paragraphFragments =+ [ Fragment+ { fragmentUserData = "text1"+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ []+ , fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 8569, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 87, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 75, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 571, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 10, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 13, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 14, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 74, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 16, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 18, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 75, cluster = 19, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 571, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 20, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 75, cluster = 21, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 571, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 22, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 23, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 24, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text2"+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = "box3", boxLeftEdge = SpacedEdge 0, boxRightEdge = SpacedEdge 0, boxStartEdge = SpacedEdge 0, boxEndEdge = SpacedEdge 0}+ , AncestorBox {boxUserData = "box2", boxLeftEdge = SpacedEdge 0, boxRightEdge = NoEdge, boxStartEdge = SpacedEdge 0, boxEndEdge = NoEdge}+ ]+ , fragmentRect = Rect {x_origin = 8569, y_origin = 0, x_size = 3350, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 81, cluster = 25, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 26, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 27, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 28, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 29, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 30, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 31, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ , Fragment+ { fragmentUserData = "text3"+ , fragmentLine = 1+ , fragmentAncestorBoxes =+ [ AncestorBox {boxUserData = "box2", boxLeftEdge = NoEdge, boxRightEdge = SpacedEdge 0, boxStartEdge = NoEdge, boxEndEdge = SpacedEdge 0}+ ]+ , fragmentRect = Rect {x_origin = 11919, y_origin = 0, x_size = 2657, y_size = -1121}+ , fragmentPen = (0, -932)+ , fragmentGlyphs =+ [ (GlyphInfo {codepoint = 69, cluster = 32, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 33, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 573, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 91, cluster = 34, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 490, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 35, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 36, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0})+ ]+ }+ ]+ }
+ .golden/shapedRuns/spannedLoremIpsum20em.fontInfo view
@@ -0,0 +1,1 @@+assets/fonts/ubuntu/Ubuntu-R.ttf 0 32,32 32,32
+ .golden/shapedRuns/spannedLoremIpsum20em.golden view
@@ -0,0 +1,492 @@+[ (0, -30, + [ (GlyphInfo {codepoint = 47, cluster = 4, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 17, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 5, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 12, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 28, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 10, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 14, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 13, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 14, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 28, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 16, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 18, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 19, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 20, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 12, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 21, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ ])+, (280, -30, + [ (GlyphInfo {codepoint = 86, cluster = 22, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 14, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 23, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 24, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 25, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 26, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 17, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 27, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 28, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 28, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 29, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 15, cluster = 30, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 31, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 32, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 15, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 33, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 34, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 35, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 14, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 36, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 37, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 15, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 38, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 39, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 40, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 41, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 42, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 12, y_advance = 0, x_offset = 0, y_offset = 0})+ ])+, (0, -66, + [ (GlyphInfo {codepoint = 68, cluster = 44, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 17, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 45, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 46, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 47, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 48, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 49, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 14, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 50, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 15, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 51, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 52, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 74, cluster = 53, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 54, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 55, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 56, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 57, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 58, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 15, cluster = 59, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 60, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 61, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 14, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 62, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 63, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 64, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ ])+, (272, -66, + [ (GlyphInfo {codepoint = 71, cluster = 65, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 66, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 67, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 68, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 69, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 70, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 71, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 14, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 72, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 28, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 73, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 74, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 75, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 76, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 77, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 78, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 28, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 79, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 80, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 81, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 12, y_advance = 0, x_offset = 0, y_offset = 0})+ ])+, (0, -102, + [ (GlyphInfo {codepoint = 76, cluster = 83, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 84, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 85, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 15, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 86, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 87, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 88, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 89, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 90, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 91, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 92, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 93, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 94, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 95, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 96, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 97, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 98, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 17, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 69, cluster = 99, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 100, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 101, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 12, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 102, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 103, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ ])+, (290, -102, + [ (GlyphInfo {codepoint = 72, cluster = 104, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 105, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 106, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 107, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 108, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 109, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 110, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 111, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 12, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 112, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 113, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 114, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 28, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 115, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 17, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 74, cluster = 116, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 117, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 118, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 17, y_advance = 0, x_offset = 0, y_offset = 0})+ ])+, (529, -102, + [ (GlyphInfo {codepoint = 3, cluster = 119, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 120, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 17, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 121, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 122, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 123, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 124, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 125, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 17, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 17, cluster = 126, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ ])+, (0, -138, + [ (GlyphInfo {codepoint = 56, cluster = 128, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 22, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 129, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 130, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 131, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 132, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 133, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 134, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 28, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 135, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ ])+, (121, -138, + [ (GlyphInfo {codepoint = 68, cluster = 136, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 17, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 137, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 138, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 139, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 28, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 140, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 141, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 142, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 143, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 28, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 144, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 89, cluster = 145, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 16, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 146, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 147, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 148, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 149, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 17, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 150, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 28, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 15, cluster = 151, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ ])+, (374, -138, + [ (GlyphInfo {codepoint = 3, cluster = 152, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 153, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 154, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 155, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 156, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 14, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 157, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 158, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 159, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 160, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 14, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 161, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 162, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 12, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 163, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 164, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ ])+, (0, -174, + [ (GlyphInfo {codepoint = 72, cluster = 166, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 91, cluster = 167, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 15, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 168, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 169, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 12, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 170, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 15, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 171, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 172, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 173, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 17, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 174, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 175, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 176, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 177, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 178, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ ])+, (181, -174, + [ (GlyphInfo {codepoint = 88, cluster = 179, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 180, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 181, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 182, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 17, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 183, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 28, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 184, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 15, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 185, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 186, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 187, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 188, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 17, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 69, cluster = 189, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 190, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 191, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 12, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 192, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 193, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 14, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 194, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 195, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 196, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 197, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 14, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 198, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ ])+, (456, -174, + [ (GlyphInfo {codepoint = 3, cluster = 199, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 200, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 201, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 202, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 203, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 17, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 204, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 205, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 206, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 207, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 208, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 209, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 210, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 211, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 91, cluster = 212, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 16, y_advance = 0, x_offset = 0, y_offset = 0})+ ])+, (0, -210, + [ (GlyphInfo {codepoint = 72, cluster = 214, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 215, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 17, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 216, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 217, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 15, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 218, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 219, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 28, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 220, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 28, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 221, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 222, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 223, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 224, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 225, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 15, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 226, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 227, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 228, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 14, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 229, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 230, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 231, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 232, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 17, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 233, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 17, cluster = 234, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ ])+, (355, -210, + [ (GlyphInfo {codepoint = 3, cluster = 235, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 39, cluster = 236, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 23, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 237, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 238, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 239, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 14, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 240, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 241, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 17, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 242, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 243, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 244, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 245, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 246, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 247, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 12, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 248, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 249, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 12, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 250, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ ])+, (0, -246, + [ (GlyphInfo {codepoint = 71, cluster = 252, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 253, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 254, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 255, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 256, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 12, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 257, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 258, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 259, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 260, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 261, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 12, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 262, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 263, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 264, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 12, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 265, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 75, cluster = 266, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 267, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 268, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 269, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 270, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 271, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 12, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 272, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 273, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0})+ ])+, (321, -246, + [ (GlyphInfo {codepoint = 3, cluster = 274, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 275, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 276, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 277, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 89, cluster = 278, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 16, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 279, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 280, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 281, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 282, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 283, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 284, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 17, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 285, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 286, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 287, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 89, cluster = 288, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 16, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 289, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 290, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 291, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 292, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0})+ ])+, (0, -282, + [ (GlyphInfo {codepoint = 72, cluster = 294, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 295, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 14, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 296, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 14, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 297, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 298, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 299, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 15, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 300, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 301, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 302, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 303, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 304, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 28, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 305, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 306, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 307, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 308, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 309, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 310, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 12, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 311, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ ])+, (261, -282, + [ (GlyphInfo {codepoint = 3, cluster = 312, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 313, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 314, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 315, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 73, cluster = 316, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 12, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 317, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 74, cluster = 318, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 319, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 320, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 17, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 321, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 322, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 323, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 324, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 325, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 326, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 327, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 17, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 328, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ ])+, (482, -282, + [ (GlyphInfo {codepoint = 83, cluster = 329, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 330, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 17, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 331, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 12, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 332, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 333, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 17, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 334, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 335, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 336, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 10, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 17, cluster = 337, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ ])+, (0, -318, + [ (GlyphInfo {codepoint = 40, cluster = 339, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 91, cluster = 340, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 15, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 341, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 15, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 342, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 343, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 344, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 345, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 346, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 347, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 12, y_advance = 0, x_offset = 0, y_offset = 0})+ ])+, (146, -318, + [ (GlyphInfo {codepoint = 3, cluster = 348, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 349, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 14, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 350, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 351, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 352, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 353, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 354, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 355, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 15, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 356, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 15, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 357, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 17, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 358, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 359, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 15, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 360, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 17, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 361, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 362, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 363, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 15, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 364, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 365, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 366, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 367, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 368, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 17, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 369, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 370, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 17, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 371, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 372, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ ])+, (495, -318, + [ (GlyphInfo {codepoint = 81, cluster = 373, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 374, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 375, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ ])+, (0, -354, + [ (GlyphInfo {codepoint = 83, cluster = 377, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 378, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 12, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 379, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 380, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 381, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 382, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 383, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 384, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 15, cluster = 385, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 386, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 387, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 14, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 388, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 389, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 390, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0})+ ])+, (204, -354, + [ (GlyphInfo {codepoint = 3, cluster = 391, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 392, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 393, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 394, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 395, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 15, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 396, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 397, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 83, cluster = 398, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 399, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 17, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 400, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 84, cluster = 401, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 402, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 403, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 404, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ ])+, (381, -354, + [ (GlyphInfo {codepoint = 82, cluster = 405, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 431, cluster = 406, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 33, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 70, cluster = 409, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 15, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 410, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 411, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 17, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 412, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 413, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 414, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 415, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 14, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 416, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 417, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 12, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 418, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 419, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 420, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0})+ ])+, (0, -390, + [ (GlyphInfo {codepoint = 80, cluster = 422, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 28, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 423, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 424, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 79, cluster = 425, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 426, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 427, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0})+ ])+, (86, -390, + [ (GlyphInfo {codepoint = 3, cluster = 428, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 429, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 17, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 81, cluster = 430, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 431, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 432, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 28, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 433, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 76, cluster = 434, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 71, cluster = 435, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 436, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 72, cluster = 437, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 86, cluster = 438, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 14, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 87, cluster = 439, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 3, cluster = 440, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0})+ ])+, (257, -390, + [ (GlyphInfo {codepoint = 79, cluster = 441, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 68, cluster = 442, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 17, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 69, cluster = 443, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 82, cluster = 444, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 19, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 85, cluster = 445, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 12, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 88, cluster = 446, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 18, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 80, cluster = 447, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 28, y_advance = 0, x_offset = 0, y_offset = 0})+ , (GlyphInfo {codepoint = 17, cluster = 448, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False}, GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})+ ])+]
− .golden/shapedRuns/spannedLoremIpsum20em/fontInfo
@@ -1,1 +0,0 @@-assets/fonts/ubuntu/Ubuntu-R.ttf 0 15,15 15,15
− .golden/shapedRuns/spannedLoremIpsum20em/golden
@@ -1,493 +0,0 @@-[(0,-14,- [(GlyphInfo {codepoint = 47, cluster = 4, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 5, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 10, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 13, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 14, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 16, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 18, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 19, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 20, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 21, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0})]-),-(132,-14,- [(GlyphInfo {codepoint = 86, cluster = 22, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 23, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 24, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 25, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 26, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 27, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 28, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 29, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 15, cluster = 30, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 31, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 32, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 33, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 34, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 35, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 36, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 37, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 38, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 39, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 40, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 41, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 42, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0})]-),-(0,-31,- [(GlyphInfo {codepoint = 68, cluster = 44, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 45, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 46, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 47, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 48, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 49, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 50, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 51, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 52, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 74, cluster = 53, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 54, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 55, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 56, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 57, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 58, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 15, cluster = 59, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 60, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 61, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 62, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 63, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 64, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0})]-),-(129,-31,- [(GlyphInfo {codepoint = 71, cluster = 65, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 66, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 67, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 68, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 69, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 70, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 71, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 72, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 73, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 74, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 75, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 76, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 77, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 78, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 79, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 80, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 81, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0})]-),-(0,-48,- [(GlyphInfo {codepoint = 76, cluster = 83, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 84, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 85, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 86, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 87, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 88, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 89, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 90, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 91, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 92, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 93, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 94, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 95, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 96, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 97, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 98, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 69, cluster = 99, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 100, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 101, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 102, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 103, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0})]-),-(138,-48,- [(GlyphInfo {codepoint = 72, cluster = 104, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 105, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 106, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 107, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 108, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 109, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 110, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 111, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 112, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 113, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 114, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 115, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 74, cluster = 116, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 117, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 118, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})]-),-(250,-48,- [(GlyphInfo {codepoint = 3, cluster = 119, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 120, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 121, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 122, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 84, cluster = 123, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 124, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 125, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 17, cluster = 126, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0})]-),-(0,-65,- [(GlyphInfo {codepoint = 56, cluster = 128, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 10, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 129, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 130, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 131, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 132, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 133, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 134, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 135, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0})]-),-(56,-65,- [(GlyphInfo {codepoint = 68, cluster = 136, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 137, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 138, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 139, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 140, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 141, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 142, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 143, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 144, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 89, cluster = 145, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 146, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 147, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 148, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 149, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 150, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 15, cluster = 151, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0})]-),-(176,-65,- [(GlyphInfo {codepoint = 3, cluster = 152, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 84, cluster = 153, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 154, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 155, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 156, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 157, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 158, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 159, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 160, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 161, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 162, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 163, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 164, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0})]-),-(0,-82,- [(GlyphInfo {codepoint = 72, cluster = 166, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 91, cluster = 167, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 168, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 169, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 170, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 171, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 172, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 173, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 174, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 175, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 176, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 177, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 178, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0})]-),-(86,-82,- [(GlyphInfo {codepoint = 88, cluster = 179, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 180, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 181, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 182, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 183, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 184, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 185, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 186, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 187, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 188, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 69, cluster = 189, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 190, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 191, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 192, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 193, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 194, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 195, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 196, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 197, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 198, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0})]-),-(217,-82,- [(GlyphInfo {codepoint = 3, cluster = 199, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 200, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 201, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 202, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 203, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 204, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 205, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 84, cluster = 206, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 207, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 208, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 209, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0})]-),-(0,-99,- [(GlyphInfo {codepoint = 72, cluster = 211, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 91, cluster = 212, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 213, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0})]-),-(19,-99,- [(GlyphInfo {codepoint = 72, cluster = 214, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 215, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 216, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 217, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 218, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 219, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 220, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 221, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 222, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 223, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 224, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 225, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 226, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 227, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 228, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 229, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 84, cluster = 230, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 231, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 232, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 233, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 17, cluster = 234, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0})]-),-(186,-99,- [(GlyphInfo {codepoint = 3, cluster = 235, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 39, cluster = 236, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 11, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 237, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 238, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 239, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 240, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 241, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 242, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 243, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 244, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 245, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 246, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 247, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 248, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 249, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 250, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})]-),-(0,-116,- [(GlyphInfo {codepoint = 71, cluster = 252, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 253, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 254, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 255, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 256, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 257, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 258, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 259, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 260, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 261, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 262, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 263, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 264, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 265, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 75, cluster = 266, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 267, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 268, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 269, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 270, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 271, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 272, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 273, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0})]-),-(152,-116,- [(GlyphInfo {codepoint = 3, cluster = 274, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 275, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 276, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 277, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 89, cluster = 278, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 279, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 280, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 281, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 282, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 283, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 284, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 285, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 286, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 287, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 89, cluster = 288, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 289, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 290, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 291, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 292, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0})]-),-(0,-133,- [(GlyphInfo {codepoint = 72, cluster = 294, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 295, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 296, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 297, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 298, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 299, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 300, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 301, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 302, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 303, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 304, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 305, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 306, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 307, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 308, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 309, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 310, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 311, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0})]-),-(122,-133,- [(GlyphInfo {codepoint = 3, cluster = 312, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 313, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 314, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 315, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 73, cluster = 316, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 317, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 74, cluster = 318, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 319, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 320, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 321, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 322, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 323, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 324, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 325, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 326, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 327, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 328, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0})]-),-(227,-133,- [(GlyphInfo {codepoint = 83, cluster = 329, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 330, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 331, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 332, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 333, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 334, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 335, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 336, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 5, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 17, cluster = 337, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0})]-),-(0,-150,- [(GlyphInfo {codepoint = 40, cluster = 339, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 91, cluster = 340, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 341, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 342, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 343, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 344, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 345, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 346, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 347, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0})]-),-(70,-150,- [(GlyphInfo {codepoint = 3, cluster = 348, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 349, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 350, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 351, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 352, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 353, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 354, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 355, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 356, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 357, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 358, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 359, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 360, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 361, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 362, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 363, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 364, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 365, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 366, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 367, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 368, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 369, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 370, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 371, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 372, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0})]-),-(234,-150,- [(GlyphInfo {codepoint = 81, cluster = 373, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 374, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 375, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0})]-),-(0,-167,- [(GlyphInfo {codepoint = 83, cluster = 377, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 378, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 379, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 380, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 381, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 382, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 383, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 384, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 15, cluster = 385, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 386, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 387, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 388, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 389, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 390, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0})]-),-(98,-167,- [(GlyphInfo {codepoint = 3, cluster = 391, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 392, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 393, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 394, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 395, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 396, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 397, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 398, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 399, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 400, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 84, cluster = 401, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 402, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 403, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 404, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0})]-),-(182,-167,- [(GlyphInfo {codepoint = 82, cluster = 405, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 431, cluster = 406, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 15, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 409, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 410, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 411, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 412, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 413, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 414, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 415, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 416, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 417, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 418, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 419, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 420, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0})]-),-(0,-184,- [(GlyphInfo {codepoint = 80, cluster = 422, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 423, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 424, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 425, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 426, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 427, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0})]-),-(40,-184,- [(GlyphInfo {codepoint = 3, cluster = 428, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 429, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 430, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 431, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 432, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 433, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 434, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 435, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 436, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 437, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 438, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 7, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 439, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 440, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 3, y_advance = 0, x_offset = 0, y_offset = 0})]-),-(120,-184,- [(GlyphInfo {codepoint = 79, cluster = 441, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 442, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 8, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 69, cluster = 443, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 444, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 445, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 6, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 446, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 9, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 447, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 13, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 17, cluster = 448, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 4, y_advance = 0, x_offset = 0, y_offset = 0})]-)]
− .golden/spannedArabicFiller20em/golden
@@ -1,213 +0,0 @@-ParagraphLayout {paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 19850, y_size = -6000}, spanLayouts = [- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 12652, y_origin = 0, x_size = 7198, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 3, cluster = 38, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 283, cluster = 36, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 388, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 293, cluster = 34, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 732, cluster = 32, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 689, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 765, cluster = 30, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 478, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 389, cluster = 28, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 955, cluster = 26, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 25, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 992, cluster = 23, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 726, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 659, cluster = 21, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 531, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 409, cluster = 19, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 307, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 389, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 14, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 502, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 657, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1075, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 564, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 770, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 479, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 288, cluster = 4, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 7060, y_origin = 0, x_size = 5592, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 702, cluster = 56, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 1248, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 454, cluster = 54, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 319, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 770, cluster = 52, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 479, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 51, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 90, cluster = 50, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 535, cluster = 48, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 714, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 920, cluster = 46, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 483, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 45, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 924, cluster = 43, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 448, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 660, cluster = 41, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 531, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 940, cluster = 39, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 626, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 7060, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 283, cluster = 93, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 388, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1075, cluster = 89, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 564, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 321, cluster = 87, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 770, cluster = 85, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 479, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 286, cluster = 83, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 955, cluster = 81, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 80, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 535, cluster = 78, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 714, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 840, cluster = 76, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 916, cluster = 74, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 524, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 321, cluster = 72, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 409, cluster = 70, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 69, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 293, cluster = 67, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 336, cluster = 65, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 334, cluster = 63, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 336, cluster = 61, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 773, cluster = 59, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 479, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 58, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 14850, y_origin = -1500, x_size = 4045, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 293, cluster = 113, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 359, cluster = 111, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 827, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 407, cluster = 109, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 454, cluster = 107, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 319, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 808, cluster = 105, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 451, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 104, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 955, cluster = 102, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 101, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 90, cluster = 100, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1275, cluster = 96, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 726, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 9168, y_origin = -1500, x_size = 5682, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 3, cluster = 145, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1087, cluster = 141, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 949, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 297, cluster = 139, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 138, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 93, cluster = 137, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1275, cluster = 133, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 726, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 955, cluster = 131, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 130, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 935, cluster = 128, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 476, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 336, cluster = 126, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 407, cluster = 124, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 293, cluster = 122, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 323, cluster = 120, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 477, cluster = 118, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 286, cluster = 116, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 115, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 3213, y_origin = -1500, x_size = 5955, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 293, cluster = 174, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 937, cluster = 172, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 316, cluster = 170, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 840, cluster = 168, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 394, cluster = 166, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 432, cluster = 164, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 265, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 286, cluster = 162, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 161, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 544, cluster = 159, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 919, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 316, cluster = 157, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 359, cluster = 155, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 827, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 477, cluster = 153, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 286, cluster = 151, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 150, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 644, cluster = 148, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 288, cluster = 146, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -1500, x_size = 3213, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 90, cluster = 191, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 517, cluster = 189, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 839, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 286, cluster = 187, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 432, cluster = 185, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 265, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 293, cluster = 183, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 336, cluster = 181, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 381, cluster = 179, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 314, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 920, cluster = 177, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 483, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 176, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 14300, y_origin = -3000, x_size = 4862, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 3, cluster = 216, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1396, cluster = 214, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 283, cluster = 212, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 388, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 293, cluster = 210, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 321, cluster = 208, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 362, cluster = 206, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 827, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 477, cluster = 204, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 286, cluster = 202, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 201, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 502, cluster = 199, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 657, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 293, cluster = 197, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 840, cluster = 195, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 808, cluster = 193, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 451, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 10225, y_origin = -3000, x_size = 4075, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 1311, cluster = 232, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 575, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 773, cluster = 230, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 479, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 229, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 93, cluster = 228, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1247, cluster = 224, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 890, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 624, cluster = 222, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 634, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 221, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 293, cluster = 219, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 920, cluster = 217, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 483, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 3898, y_origin = -3000, x_size = 6327, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 3, cluster = 264, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 90, cluster = 263, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 660, cluster = 261, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 531, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 636, cluster = 259, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 634, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1064, cluster = 255, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 518, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 286, cluster = 253, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 252, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 432, cluster = 250, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 265, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 293, cluster = 248, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 765, cluster = 246, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 478, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 715, cluster = 244, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 855, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 955, cluster = 242, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 241, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 502, cluster = 239, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 657, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 297, cluster = 237, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 236, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -3000, x_size = 3898, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 935, cluster = 280, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 476, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 606, cluster = 278, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 663, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 796, cluster = 276, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 442, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 710, cluster = 274, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 862, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 477, cluster = 272, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 286, cluster = 270, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 269, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1275, cluster = 265, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 726, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 12238, y_origin = -4500, x_size = 2357, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 935, cluster = 293, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 476, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 334, cluster = 291, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 916, cluster = 289, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 524, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 336, cluster = 287, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 937, cluster = 285, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 477, cluster = 283, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 5880, y_origin = -4500, x_size = 6358, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 3, cluster = 323, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 502, cluster = 321, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 657, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 297, cluster = 319, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 318, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 93, cluster = 317, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 912, cluster = 315, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 646, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 394, cluster = 313, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 955, cluster = 311, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 310, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 494, cluster = 308, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 702, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1660, cluster = 304, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 0, y_advance = 0, x_offset = 115, y_offset = 80}),- (GlyphInfo {codepoint = 916, cluster = 304, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 524, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 606, cluster = 302, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 663, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 321, cluster = 300, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 394, cluster = 298, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 955, cluster = 296, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 295, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -4500, x_size = 5880, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 90, cluster = 356, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1204, cluster = 352, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 726, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 293, cluster = 350, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 765, cluster = 348, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 478, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 477, cluster = 346, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 286, cluster = 344, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 343, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 935, cluster = 341, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 476, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 409, cluster = 339, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 286, cluster = 337, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 659, cluster = 335, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 531, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 389, cluster = 333, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 955, cluster = 331, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 330, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 293, cluster = 328, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 920, cluster = 326, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 483, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 297, cluster = 324, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})]- }]-]}
− .golden/spannedArabicFiller20emPaginated/golden
@@ -1,229 +0,0 @@-[(Break, ParagraphLayout {paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 19850, y_size = -3000}, spanLayouts = [- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 12652, y_origin = 0, x_size = 7198, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 3, cluster = 38, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 283, cluster = 36, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 388, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 293, cluster = 34, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 732, cluster = 32, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 689, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 765, cluster = 30, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 478, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 389, cluster = 28, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 955, cluster = 26, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 25, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 992, cluster = 23, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 726, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 659, cluster = 21, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 531, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 409, cluster = 19, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 307, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 389, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 14, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 502, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 657, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1075, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 564, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 770, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 479, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 288, cluster = 4, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 7060, y_origin = 0, x_size = 5592, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 702, cluster = 56, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 1248, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 454, cluster = 54, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 319, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 770, cluster = 52, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 479, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 51, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 90, cluster = 50, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 535, cluster = 48, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 714, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 920, cluster = 46, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 483, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 45, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 924, cluster = 43, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 448, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 660, cluster = 41, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 531, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 940, cluster = 39, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 626, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 7060, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 283, cluster = 93, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 388, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1075, cluster = 89, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 564, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 321, cluster = 87, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 770, cluster = 85, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 479, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 286, cluster = 83, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 955, cluster = 81, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 80, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 535, cluster = 78, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 714, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 840, cluster = 76, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 916, cluster = 74, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 524, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 321, cluster = 72, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 409, cluster = 70, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 69, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 293, cluster = 67, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 336, cluster = 65, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 334, cluster = 63, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 336, cluster = 61, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 773, cluster = 59, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 479, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 58, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 14850, y_origin = -1500, x_size = 4045, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 293, cluster = 113, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 359, cluster = 111, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 827, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 407, cluster = 109, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 454, cluster = 107, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 319, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 808, cluster = 105, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 451, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 104, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 955, cluster = 102, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 101, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 90, cluster = 100, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1275, cluster = 96, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 726, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 9168, y_origin = -1500, x_size = 5682, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 3, cluster = 145, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1087, cluster = 141, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 949, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 297, cluster = 139, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 138, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 93, cluster = 137, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1275, cluster = 133, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 726, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 955, cluster = 131, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 130, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 935, cluster = 128, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 476, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 336, cluster = 126, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 407, cluster = 124, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 293, cluster = 122, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 323, cluster = 120, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 477, cluster = 118, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 286, cluster = 116, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 115, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 3213, y_origin = -1500, x_size = 5955, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 293, cluster = 174, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 937, cluster = 172, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 316, cluster = 170, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 840, cluster = 168, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 394, cluster = 166, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 432, cluster = 164, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 265, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 286, cluster = 162, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 161, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 544, cluster = 159, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 919, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 316, cluster = 157, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 359, cluster = 155, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 827, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 477, cluster = 153, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 286, cluster = 151, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 150, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 644, cluster = 148, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 288, cluster = 146, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -1500, x_size = 3213, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 90, cluster = 191, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 517, cluster = 189, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 839, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 286, cluster = 187, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 432, cluster = 185, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 265, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 293, cluster = 183, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 336, cluster = 181, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 381, cluster = 179, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 314, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 920, cluster = 177, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 483, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 176, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [],- SpanLayout [],- SpanLayout [],- SpanLayout [],- SpanLayout []-]}-),-(Continue, ParagraphLayout {paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 19162, y_size = -3000}, spanLayouts = [- SpanLayout [],- SpanLayout [],- SpanLayout [],- SpanLayout [],- SpanLayout [],- SpanLayout [],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 14300, y_origin = 0, x_size = 4862, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 3, cluster = 216, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1396, cluster = 214, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 283, cluster = 212, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 388, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 293, cluster = 210, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 321, cluster = 208, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 362, cluster = 206, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 827, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 477, cluster = 204, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 286, cluster = 202, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 201, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 502, cluster = 199, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 657, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 293, cluster = 197, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 840, cluster = 195, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 808, cluster = 193, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 451, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 10225, y_origin = 0, x_size = 4075, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 1311, cluster = 232, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 575, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 773, cluster = 230, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 479, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 229, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 93, cluster = 228, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1247, cluster = 224, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 890, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 624, cluster = 222, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 634, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 221, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 293, cluster = 219, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 920, cluster = 217, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 483, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 3898, y_origin = 0, x_size = 6327, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 3, cluster = 264, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 90, cluster = 263, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 660, cluster = 261, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 531, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 636, cluster = 259, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 634, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1064, cluster = 255, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 518, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 286, cluster = 253, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 252, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 432, cluster = 250, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 265, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 293, cluster = 248, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 765, cluster = 246, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 478, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 715, cluster = 244, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 855, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 955, cluster = 242, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 241, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 502, cluster = 239, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 657, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 297, cluster = 237, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 236, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 3898, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 935, cluster = 280, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 476, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 606, cluster = 278, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 663, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 796, cluster = 276, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 442, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 710, cluster = 274, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 862, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 477, cluster = 272, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 286, cluster = 270, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 269, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1275, cluster = 265, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 726, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 12238, y_origin = -1500, x_size = 2357, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 935, cluster = 293, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 476, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 334, cluster = 291, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 916, cluster = 289, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 524, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 336, cluster = 287, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 937, cluster = 285, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 468, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 477, cluster = 283, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 5880, y_origin = -1500, x_size = 6358, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 3, cluster = 323, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 502, cluster = 321, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 657, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 297, cluster = 319, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 318, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 93, cluster = 317, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 912, cluster = 315, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 646, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 394, cluster = 313, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 955, cluster = 311, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 310, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 494, cluster = 308, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 702, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1660, cluster = 304, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 0, y_advance = 0, x_offset = 115, y_offset = 80}),- (GlyphInfo {codepoint = 916, cluster = 304, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 524, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 606, cluster = 302, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 663, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 321, cluster = 300, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 310, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 394, cluster = 298, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 955, cluster = 296, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 295, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -1500, x_size = 5880, y_size = -1500}, fragmentPen = (0,-1085), fragmentGlyphs =- [(GlyphInfo {codepoint = 90, cluster = 356, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 272, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 1204, cluster = 352, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 726, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 293, cluster = 350, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 765, cluster = 348, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 478, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 477, cluster = 346, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 269, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 286, cluster = 344, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 343, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 935, cluster = 341, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 476, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 409, cluster = 339, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 286, cluster = 337, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 659, cluster = 335, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 531, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 389, cluster = 333, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 955, cluster = 331, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 455, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 330, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 236, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 293, cluster = 328, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 270, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 920, cluster = 326, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 483, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 297, cluster = 324, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 224, y_advance = 0, x_offset = 0, y_offset = 0})]- }]-]}-)]
− .golden/spannedLoremIpsum20em/golden
@@ -1,489 +0,0 @@-ParagraphLayout {paragraphRect = Rect {x_origin = 0, y_origin = 0, x_size = 19791, y_size = -12331}, spanLayouts = [- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = 0, x_size = 8747, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 47, cluster = 4, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 507, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 5, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 6, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 7, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 8, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 9, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 10, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 11, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 12, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 13, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 14, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 15, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 16, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 17, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 18, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 19, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 20, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 21, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 8747, y_origin = 0, x_size = 9563, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 86, cluster = 22, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 23, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 24, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 25, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 26, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 27, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 28, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 29, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 15, cluster = 30, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 31, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 32, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 33, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 34, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 35, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 36, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 37, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 38, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 39, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 40, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 41, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 42, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -1121, x_size = 8553, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 68, cluster = 44, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 45, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 46, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 47, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 48, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 49, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 50, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 51, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 52, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 74, cluster = 53, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 54, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 55, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 56, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 57, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 58, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 15, cluster = 59, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 60, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 61, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 62, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 63, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 64, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 8553, y_origin = -1121, x_size = 8890, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 71, cluster = 65, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 66, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 67, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 68, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 69, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 70, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 71, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 72, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 73, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 74, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 75, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 76, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 77, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 78, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 79, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 80, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 81, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -2242, x_size = 9114, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 76, cluster = 83, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 84, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 85, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 86, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 87, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 88, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 89, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 90, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 91, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 92, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 93, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 94, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 95, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 96, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 97, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 98, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 69, cluster = 99, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 100, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 101, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 102, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 103, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 9114, y_origin = -2242, x_size = 7467, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 72, cluster = 104, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 105, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 106, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 107, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 108, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 109, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 110, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 111, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 112, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 113, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 114, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 115, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 74, cluster = 116, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 117, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 118, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 16581, y_origin = -2242, x_size = 3210, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 3, cluster = 119, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 120, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 121, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 122, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 84, cluster = 123, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 124, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 125, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 17, cluster = 126, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -3363, x_size = 3799, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 56, cluster = 128, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 688, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 129, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 130, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 131, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 132, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 133, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 134, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 135, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 3799, y_origin = -3363, x_size = 7878, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 68, cluster = 136, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 137, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 138, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 139, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 140, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 141, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 142, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 143, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 144, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 89, cluster = 145, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 488, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 146, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 147, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 148, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 149, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 150, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 15, cluster = 151, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 11677, y_origin = -3363, x_size = 5885, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 3, cluster = 152, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 84, cluster = 153, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 154, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 155, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 156, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 157, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 158, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 159, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 160, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 161, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 162, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 163, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 164, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -4484, x_size = 5686, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 72, cluster = 166, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 91, cluster = 167, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 490, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 168, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 169, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 170, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 171, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 172, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 173, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 174, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 175, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 176, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 177, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 178, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 5686, y_origin = -4484, x_size = 8592, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 88, cluster = 179, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 180, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 181, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 182, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 183, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 184, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 185, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 186, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 187, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 188, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 69, cluster = 189, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 190, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 191, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 192, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 193, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 194, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 195, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 196, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 197, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 198, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 14278, y_origin = -4484, x_size = 4491, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 3, cluster = 199, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 200, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 201, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 202, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 203, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 204, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 205, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 84, cluster = 206, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 207, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 208, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 209, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -5605, x_size = 1301, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 72, cluster = 211, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 91, cluster = 212, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 511, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 213, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 1301, y_origin = -5605, x_size = 11041, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 72, cluster = 214, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 215, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 216, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 217, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 218, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 219, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 220, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 221, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 222, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 223, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 224, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 225, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 452, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 226, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 227, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 228, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 229, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 84, cluster = 230, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 231, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 232, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 233, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 17, cluster = 234, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 12342, y_origin = -5605, x_size = 6884, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 3, cluster = 235, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 39, cluster = 236, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 713, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 237, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 238, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 239, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 240, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 241, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 242, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 243, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 244, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 245, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 246, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 247, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 248, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 249, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 250, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -6726, x_size = 10089, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 71, cluster = 252, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 253, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 254, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 255, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 256, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 257, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 258, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 259, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 260, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 261, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 262, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 263, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 264, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 265, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 75, cluster = 266, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 571, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 267, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 268, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 269, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 270, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 271, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 272, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 273, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 10089, y_origin = -6726, x_size = 7884, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 3, cluster = 274, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 275, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 276, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 277, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 89, cluster = 278, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 488, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 279, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 280, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 281, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 282, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 283, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 284, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 285, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 286, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 287, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 89, cluster = 288, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 488, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 289, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 290, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 291, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 292, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -7847, x_size = 8158, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 72, cluster = 294, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 295, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 296, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 297, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 298, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 299, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 300, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 301, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 302, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 303, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 304, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 305, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 306, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 307, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 308, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 309, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 310, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 311, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 8158, y_origin = -7847, x_size = 6988, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 3, cluster = 312, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 313, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 314, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 315, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 73, cluster = 316, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 317, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 74, cluster = 318, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 578, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 319, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 320, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 321, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 322, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 323, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 324, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 325, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 326, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 327, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 328, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 15146, y_origin = -7847, x_size = 3825, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 83, cluster = 329, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 330, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 331, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 332, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 333, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 334, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 335, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 336, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 331, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 17, cluster = 337, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -8968, x_size = 4594, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 40, cluster = 339, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 580, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 91, cluster = 340, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 490, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 341, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 342, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 343, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 344, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 392, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 345, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 346, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 347, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 4594, y_origin = -8968, x_size = 10907, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 3, cluster = 348, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 349, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 350, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 351, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 352, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 353, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 354, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 355, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 356, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 357, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 358, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 359, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 360, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 361, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 362, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 363, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 364, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 365, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 366, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 367, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 368, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 369, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 370, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 371, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 372, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 15501, y_origin = -8968, x_size = 1738, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 81, cluster = 373, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 374, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 375, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -10089, x_size = 6426, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 83, cluster = 377, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 378, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 379, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 380, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 381, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 382, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 383, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 384, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 413, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 15, cluster = 385, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 386, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 387, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 388, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 389, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 390, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 6426, y_origin = -10089, x_size = 5590, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 3, cluster = 391, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 392, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 393, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 394, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 395, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 396, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 397, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 83, cluster = 398, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 399, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 400, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 84, cluster = 401, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 402, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 403, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 404, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 12016, y_origin = -10089, x_size = 7183, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 82, cluster = 405, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 431, cluster = 406, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 1033, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 70, cluster = 409, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 465, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 410, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 411, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 412, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 413, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 414, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 415, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 416, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 417, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 418, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 419, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 420, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})]- }, Fragment {fragmentRect = Rect {x_origin = 0, y_origin = -11210, x_size = 2652, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 80, cluster = 422, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 423, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 424, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 79, cluster = 425, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 426, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 427, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 2652, y_origin = -11210, x_size = 5383, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 3, cluster = 428, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 429, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 81, cluster = 430, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 431, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 432, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 433, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 76, cluster = 434, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 253, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 71, cluster = 435, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 436, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 72, cluster = 437, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 559, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 86, cluster = 438, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 446, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 87, cluster = 439, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 402, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 3, cluster = 440, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 231, y_advance = 0, x_offset = 0, y_offset = 0})]- }],- SpanLayout [Fragment {fragmentRect = Rect {x_origin = 8035, y_origin = -11210, x_size = 4041, y_size = -1121}, fragmentPen = (0,-932), fragmentGlyphs =- [(GlyphInfo {codepoint = 79, cluster = 441, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 273, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 68, cluster = 442, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 522, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 69, cluster = 443, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 589, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 82, cluster = 444, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 590, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 85, cluster = 445, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 386, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 88, cluster = 446, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 574, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 80, cluster = 447, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 861, y_advance = 0, x_offset = 0, y_offset = 0}),- (GlyphInfo {codepoint = 17, cluster = 448, unsafeToBreak = False, unsafeToConcat = False, safeToInsertTatweel = False},GlyphPos {x_advance = 246, y_advance = 0, x_offset = 0, y_offset = 0})]- }]-]}
CHANGELOG.md view
@@ -1,5 +1,40 @@ # Revision history for Balkón +## 1.0.0.0 -- 2023-05-15++* Added new `Data.Text.ParagraphLayout.Rich` interface to support rich text.++ * Supports multiple fonts in the same paragraph. Where line height varies,+ text will be aligned by its top edge.++ * Supports nested boxes, each with optional spacing applied to its left+ and right edge.++ * Requires user to set base text direction (LTR or RTL).++* Moved existing plain text interface into `Data.Text.ParagraphLayout.Plain`+ submodule and marked it as deprecated.++* Marked `Data.Text.ParagraphLayout.ParagraphConstruction` as deprecated.++* Input text spans can now have arbitrary user data attached to them.+ All related data types (`Paragraph`, `Span`, `Fragment`, `SpanLayout`,+ `ParagraphLayout`) have been extended with a type variable.++* Future-proofed `ParagraphOptions` and `SpanOptions` by hiding their+ constructors. Use `defaultParagraphOptions` and `defaultSpanOptions` instead.++* Added line numbers to laid out fragments.++* Added information about ancestor boxes of laid out fragments.+ The plain text interface implicitly generates one box per span, while+ the rich text interface gives the user direct control over the box hierarchy.++* Increased font size for the "shaped runs" output so that it better fits+ a window with 640 pixels of width.++* Fixed compatibility with base < 4.15.+ ## 0.3.0.0 -- 2023-04-13 * Added partial support for bidirectional text
TESTING.md view
@@ -28,11 +28,11 @@ 4. Verify that `git status` reports no differences. - 5. Verify that a file named `actual` was generated by automated tests in- the directory `.golden/shapedRuns/spannedLoremIpsum20em/`.+ 5. Verify that a file named `spannedLoremIpsum20em.actual` was generated by+ automated tests in the directory `.golden/shapedRuns/`. - For example by running the command- `ls -l .golden/shapedRuns/spannedLoremIpsum20em/actual`+ `ls -l .golden/shapedRuns/spannedLoremIpsum20em.actual` and checking the file's modification time. @@ -54,9 +54,9 @@ 1. Run Typograffiti with the font path, face index, pixel size, and scale set according to the contents of the file- `.golden/shapedRuns/spannedLoremIpsum20em/fontInfo` from Balkón,+ `.golden/shapedRuns/spannedLoremIpsum20em.fontInfo` from Balkón, and with input set to be read from the file- `.golden/shapedRuns/spannedLoremIpsum20em/golden` from Balkón.+ `.golden/shapedRuns/spannedLoremIpsum20em.golden` from Balkón. 2. Verify that text is displayed in the output window.
balkon.cabal view
@@ -14,7 +14,7 @@ -- PVP summary: +-+------- breaking API changes -- | | +----- non-breaking API additions -- | | | +--- code changes with no API change-version: 0.3.0.0+version: 1.0.0.0 stability: experimental @@ -26,12 +26,15 @@ . Given an input text and formatting options, Balkón produces an inline layout with defined glyph positions and box coordinates, all within a- containing unit called a paragraph.+ containing unit called a paragraph. See "Data.Text.ParagraphLayout.Rich". . Internally, HarfBuzz is used to shape individual runs of text, each of which fits within one line and has a constant script, direction, language, and formatting. Balkón abstracts this so that you can provide text with any mix of these attributes and a desired line width for line breaking.+ .+ Additionally, Balkón can be used for breaking an inline layout into pages.+ See "Data.Text.ParagraphLayout". -- URL for the project homepage or repository. homepage: https://argonaut-constellation.org/@@ -68,32 +71,8 @@ -- or a tutorial module. extra-source-files: cabal.project,- .golden/arabicFiller20em/golden,- .golden/czechHelloParagraph/golden,- .golden/czechHelloParagraphNarrow/golden,- .golden/czechHelloParagraphUltraNarrow/golden,- .golden/devanagariAccentParagraph/golden,- .golden/devanagariParagraph/golden,- .golden/devanagariPrefixedAccentParagraph/golden,- .golden/hardBreaksLTRParagraph/golden,- .golden/hardBreaksRTLParagraph/golden,- .golden/ligatureParagraph/golden,- .golden/ligatureParagraphBreak1/golden,- .golden/ligatureParagraphBreak2/golden,- .golden/lineHeightLarger/golden,- .golden/lineHeightNormal/golden,- .golden/lineHeightSmaller/golden,- .golden/loremIpsum100em/golden,- .golden/loremIpsum20em/golden,- .golden/loremIpsum20emPaginated/golden,- .golden/manySpacesParagraph/golden,- .golden/mixedLanguageLTRParagraph/golden,- .golden/mixedScriptWordsParagraph/golden,- .golden/shapedRuns/spannedLoremIpsum20em/fontInfo,- .golden/shapedRuns/spannedLoremIpsum20em/golden,- .golden/spannedArabicFiller20em/golden,- .golden/spannedArabicFiller20emPaginated/golden,- .golden/spannedLoremIpsum20em/golden,+ .golden/**/*.fontInfo,+ .golden/**/*.golden, assets/fonts/plex/IBMPlexSansArabic-Regular.ttf, assets/fonts/plex/OFL.txt, assets/fonts/sarala/OFL.txt,@@ -125,29 +104,42 @@ -- Modules exported to tests and to the public part of the library. exposed-modules:+ Data.Text.ParagraphLayout.Internal.AncestorBox,+ Data.Text.ParagraphLayout.Internal.ApplyBoxes, Data.Text.ParagraphLayout.Internal.BiDiReorder,+ Data.Text.ParagraphLayout.Internal.BoxOptions, Data.Text.ParagraphLayout.Internal.Break, Data.Text.ParagraphLayout.Internal.Fragment, Data.Text.ParagraphLayout.Internal.LineHeight, Data.Text.ParagraphLayout.Internal.LinePagination, Data.Text.ParagraphLayout.Internal.Paginable, Data.Text.ParagraphLayout.Internal.ParagraphConstruction,- Data.Text.ParagraphLayout.Internal.ParagraphLine, Data.Text.ParagraphLayout.Internal.ParagraphOptions, Data.Text.ParagraphLayout.Internal.Plain, Data.Text.ParagraphLayout.Internal.Plain.Paragraph, Data.Text.ParagraphLayout.Internal.Plain.ParagraphLayout, Data.Text.ParagraphLayout.Internal.Rect,+ Data.Text.ParagraphLayout.Internal.ResolvedBox, Data.Text.ParagraphLayout.Internal.ResolvedSpan,+ Data.Text.ParagraphLayout.Internal.Rich,+ Data.Text.ParagraphLayout.Internal.Rich.Paragraph,+ Data.Text.ParagraphLayout.Internal.Rich.ParagraphLayout, Data.Text.ParagraphLayout.Internal.Run,- Data.Text.ParagraphLayout.Internal.Script, Data.Text.ParagraphLayout.Internal.Span, Data.Text.ParagraphLayout.Internal.TextContainer,+ Data.Text.ParagraphLayout.Internal.TextOptions,+ Data.Text.ParagraphLayout.Internal.Tree,+ Data.Text.ParagraphLayout.Internal.WithSpan, Data.Text.ParagraphLayout.Internal.Zipper -- Modules used purely internally and not in any tests. other-modules:- Data.Text.ParagraphLayout.Internal.ProtoFragment+ Data.Text.ParagraphLayout.Internal.Layout,+ Data.Text.ParagraphLayout.Internal.ParagraphExtents,+ Data.Text.ParagraphLayout.Internal.ParagraphLine,+ Data.Text.ParagraphLayout.Internal.ProtoFragment,+ Data.Text.ParagraphLayout.Internal.ProtoLine,+ Data.Text.ParagraphLayout.Internal.Script build-depends: base >=4.12 && < 4.16,@@ -166,7 +158,9 @@ exposed-modules: Data.Text.ParagraphLayout, Data.Text.ParagraphLayout.ParagraphConstruction,- Data.Text.ParagraphLayout.Rect+ Data.Text.ParagraphLayout.Plain,+ Data.Text.ParagraphLayout.Rect,+ Data.Text.ParagraphLayout.Rich -- Other library packages from which modules are imported. build-depends:@@ -186,16 +180,22 @@ main-is: Spec.hs other-modules:- Data.Text.ParagraphLayoutSpec, Data.Text.ParagraphLayout.FontLoader,+ Data.Text.ParagraphLayout.Internal.ApplyBoxesSpec, Data.Text.ParagraphLayout.Internal.BiDiReorderSpec, Data.Text.ParagraphLayout.Internal.BreakSpec, Data.Text.ParagraphLayout.Internal.LinePaginationSpec, Data.Text.ParagraphLayout.Internal.RunSpec, Data.Text.ParagraphLayout.Internal.TextContainerSpec,+ Data.Text.ParagraphLayout.Internal.TreeSpec, Data.Text.ParagraphLayout.Internal.ZipperSpec,- Data.Text.ParagraphLayout.ParagraphData,+ Data.Text.ParagraphLayout.Plain.ParagraphData,+ Data.Text.ParagraphLayout.PlainSpec,+ Data.Text.ParagraphLayout.PrettyShow,+ Data.Text.ParagraphLayout.PrettyShow.Golden, Data.Text.ParagraphLayout.RectSpec,+ Data.Text.ParagraphLayout.Rich.ParagraphData,+ Data.Text.ParagraphLayout.RichSpec, Data.Text.ParagraphLayout.SpanData -- Test dependencies.
lib/Data/Text/ParagraphLayout.hs view
@@ -1,5 +1,9 @@--- |+-- | Generic functions for manipulating paragraph layout. --+-- In order to create such paragraph layout in the first place, see+-- "Data.Text.ParagraphLayout.Rich" for the rich text interface, or+-- "Data.Text.ParagraphLayout.Plain" for the legacy plain text interface.+-- -- Positions and distances are represented as 32-bit integers. Their unit must -- be defined by the caller, who must calculate the desired dimensions of the -- EM square of the input font and set them using@@ -13,9 +17,7 @@ -- -- Y coordinates increase from bottom to top. module Data.Text.ParagraphLayout- ( Fragment (Fragment, fragmentPen, fragmentRect, fragmentGlyphs)- , LineHeight (Absolute, Normal)- , PageContinuity (Break, Continue)+ ( PageContinuity (Break, Continue) , PageOptions ( PageOptions , pageCurrentHeight@@ -24,31 +26,9 @@ , pageWidows ) , Paginable- , Paragraph (Paragraph)- , ParagraphLayout (ParagraphLayout, paragraphRect, spanLayouts)- , ParagraphOptions- ( ParagraphOptions- , paragraphFont- , paragraphLineHeight- , paragraphMaxWidth- )- , Span (Span, spanLength, spanOptions)- , SpanLayout (SpanLayout)- , SpanOptions (SpanOptions, spanLanguage)- , layoutPlain , paginate- , paragraphSpanBounds- , paragraphSpanTexts- , paragraphText ) where -import Data.Text.ParagraphLayout.Internal.Fragment-import Data.Text.ParagraphLayout.Internal.LineHeight import Data.Text.ParagraphLayout.Internal.LinePagination import Data.Text.ParagraphLayout.Internal.Paginable-import Data.Text.ParagraphLayout.Internal.ParagraphOptions-import Data.Text.ParagraphLayout.Internal.Plain-import Data.Text.ParagraphLayout.Internal.Plain.Paragraph-import Data.Text.ParagraphLayout.Internal.Plain.ParagraphLayout-import Data.Text.ParagraphLayout.Internal.Span
lib/Data/Text/ParagraphLayout/ParagraphConstruction.hs view
@@ -1,15 +1,17 @@--- | Infix operators for construction of paragraphs with readable code.+-- | Infix operators for construction of legacy plain text paragraphs+-- with readable code. -- -- Example construction: ----- > let en = (,) SpanOptions { spanLanguage = "en" }--- > ja = (,) SpanOptions { spanLanguage = "ja" }+-- > let en = (,) defaultSpanOptions { spanLanguage = "en" }+-- > ja = (,) defaultSpanOptions { spanLanguage = "ja" } -- > in "ignored prefix" |< en "one two " >|< ja "三四" >| "ignored suffix" -- -- Special syntax for paragraphs with no contents: -- -- > "ignored prefix" |<>| "ignored suffix" module Data.Text.ParagraphLayout.ParagraphConstruction+{-# DEPRECATED "Use \"Data.Text.ParagraphLayout.Rich\" instead." #-} ( (>|) , (>|<) , (|<)
+ lib/Data/Text/ParagraphLayout/Plain.hs view
@@ -0,0 +1,62 @@+-- | Legacy interface for laying out paragraphs of plain text.+--+-- This interface only allows one font with a fixed line height to be used for+-- the entire paragraph. As a consequence, all lines will have the same height.+module Data.Text.ParagraphLayout.Plain+{-# DEPRECATED "Use \"Data.Text.ParagraphLayout.Rich\" instead." #-}+ -- * Input paragraph+ ( Paragraph (Paragraph)+ , LineHeight (Absolute, Normal)+ , ParagraphOptions+ , defaultParagraphOptions+ -- ** Paragraph options+ -- | These are record selectors that can be used for reading+ -- as well as updating specific option fields.+ , paragraphFont+ , paragraphLineHeight+ , paragraphMaxWidth+ -- ** Text spans+ , Span (Span, spanUserData, spanLength, spanOptions)+ , SpanOptions+ , defaultSpanOptions+ -- ** Span options+ -- | These are record selectors that can be used for reading+ -- as well as updating specific option fields.+ , spanLanguage+ -- ** Verification+ , paragraphSpanBounds+ , paragraphSpanTexts+ , paragraphText+ -- * Output layout+ , layoutPlain+ , ParagraphLayout (ParagraphLayout, paragraphRect, spanLayouts)+ , SpanLayout (SpanLayout)+ , Fragment+ ( Fragment+ , fragmentUserData+ , fragmentLine+ , fragmentAncestorBoxes+ , fragmentRect+ , fragmentPen+ , fragmentGlyphs+ )+ , AncestorBox+ ( AncestorBox+ , boxUserData+ , boxLeftEdge+ , boxRightEdge+ , boxStartEdge+ , boxEndEdge+ )+ , BoxEdge (NoEdge, SpacedEdge)+ )+where++import Data.Text.ParagraphLayout.Internal.AncestorBox+import Data.Text.ParagraphLayout.Internal.Fragment+import Data.Text.ParagraphLayout.Internal.LineHeight+import Data.Text.ParagraphLayout.Internal.ParagraphOptions+import Data.Text.ParagraphLayout.Internal.Plain+import Data.Text.ParagraphLayout.Internal.Plain.Paragraph+import Data.Text.ParagraphLayout.Internal.Plain.ParagraphLayout+import Data.Text.ParagraphLayout.Internal.Span
+ lib/Data/Text/ParagraphLayout/Rich.hs view
@@ -0,0 +1,76 @@+-- | Interface for laying out paragraphs of rich text.+--+-- The main entry point is the function `layoutRich`.+module Data.Text.ParagraphLayout.Rich+ -- * Input paragraph+ ( Paragraph (Paragraph)+ , constructParagraph+ , BoxSpacing (BoxSpacingLeftRight)+ , LineHeight (Absolute, Normal)+ , ParagraphOptions+ , defaultParagraphOptions+ -- ** Paragraph options+ -- | These are record selectors that can be used for reading+ -- as well as updating specific option fields.+ , paragraphLineHeight+ , paragraphMaxWidth+ -- NOTE: `paragraphFont` is only used by the legacy plain text interface,+ -- and is therefore not exported here.+ -- ** Content tree+ , RootNode (RootBox)+ , InnerNode (InlineBox, TextSequence)+ , Box (Box)+ , BoxOptions+ , defaultBoxOptions+ , TextOptions+ , defaultTextOptions+ -- ** Box options+ -- | These are record selectors that can be used for reading+ -- as well as updating specific option fields.+ , boxSpacing+ -- ** Text options+ -- | These are record selectors that can be used for reading+ -- as well as updating specific option fields.+ , textFont+ , textLineHeight+ , textLanguage+ , textDirection+ -- ** Verification+ , paragraphSpanBounds+ , paragraphSpanTexts+ , paragraphText+ -- * Output layout+ , layoutRich+ , ParagraphLayout (ParagraphLayout, paragraphRect, paragraphFragments)+ , Fragment+ ( Fragment+ , fragmentUserData+ , fragmentLine+ , fragmentAncestorBoxes+ , fragmentRect+ , fragmentPen+ , fragmentGlyphs+ )+ , fragmentSpacedRect+ , AncestorBox+ ( AncestorBox+ , boxUserData+ , boxLeftEdge+ , boxRightEdge+ , boxStartEdge+ , boxEndEdge+ )+ , BoxEdge (NoEdge, SpacedEdge)+ )+where++import Data.Text.ParagraphLayout.Internal.AncestorBox+import Data.Text.ParagraphLayout.Internal.BoxOptions+import Data.Text.ParagraphLayout.Internal.Fragment+import Data.Text.ParagraphLayout.Internal.LineHeight+import Data.Text.ParagraphLayout.Internal.ParagraphOptions+import Data.Text.ParagraphLayout.Internal.Rich+import Data.Text.ParagraphLayout.Internal.Rich.Paragraph+import Data.Text.ParagraphLayout.Internal.Rich.ParagraphLayout+import Data.Text.ParagraphLayout.Internal.TextOptions+import Data.Text.ParagraphLayout.Internal.Tree
+ src/Data/Text/ParagraphLayout/Internal/AncestorBox.hs view
@@ -0,0 +1,91 @@+module Data.Text.ParagraphLayout.Internal.AncestorBox+ ( AncestorBox (..)+ , BoxEdge (..)+ , totalLeftSpacing+ , totalRightSpacing+ )+where++import Data.Int (Int32)++-- | Describes the relationship of a fragment to an inline box that contains it.+--+-- A box can have many fragments, and a fragment contained by a box is also+-- contained by all ancestors of that box.+--+-- The root inline box, which forms the basis of each paragraph, is implied+-- and not described by this type of record.+data AncestorBox d = AncestorBox++ { boxUserData :: d+ -- ^ User-defined data associated with the inline box.++ , boxLeftEdge :: BoxEdge+ -- ^ Describes the left edge of the inline box.+ -- Typically applied to the leftmost fragment in the box,+ -- and set to `NoEdge` for all other fragments.+ --+ -- Equal to `boxStartEdge` for LTR boxes.+ --+ -- Equal to `boxEndEdge` for RTL boxes.++ , boxRightEdge :: BoxEdge+ -- ^ Describes the right edge of the inline box.+ -- Typically applied to the rightmost fragment in the box,+ -- and set to `NoEdge` for all other fragments.+ --+ -- Equal to `boxStartEdge` for RTL boxes.+ --+ -- Equal to `boxEndEdge` for LTR boxes.++ , boxStartEdge :: BoxEdge+ -- ^ Describes the start edge of the inline box.+ -- Typically applied to the startmost fragment in the box,+ -- and set to `NoEdge` for all other fragments.+ --+ -- Equal to `boxLeftEdge` for LTR boxes.+ --+ -- Equal to `boxRightEdge` for RTL boxes.++ , boxEndEdge :: BoxEdge+ -- ^ Describes the end edge of the inline box.+ -- Typically applied to the endmost fragment in the box,+ -- and set to `NoEdge` for all other fragments.+ --+ -- Equal to `boxLeftEdge` for RTL boxes.+ --+ -- Equal to `boxRightEdge` for LTR boxes.++ }+ deriving (Eq, Read, Show)++-- | Describes either the absence, or the presence and size, of a box edge at a+-- given position.+data BoxEdge++ = NoEdge+ -- ^ The given box does not have an edge here.+ --+ -- This typically means that the box was fragmented and that the given edge+ -- is associated with another fragment.++ | SpacedEdge Int32+ -- ^ The given box has an edge here, adding a given amount of empty space+ -- from the `Data.Text.ParagraphLayout.Rich.fragmentRect` outward.++ deriving (Eq, Read, Show)++-- | Amount of empty space to add on account of the given `BoxEdge`.+edgeSpacing :: BoxEdge -> Int32+edgeSpacing NoEdge = 0+edgeSpacing (SpacedEdge s) = s++-- | Amount of empty space to add to the left side+-- on account of all given boxes in sum.+totalLeftSpacing :: [AncestorBox d] -> Int32+totalLeftSpacing bs = sum $ map (edgeSpacing . boxLeftEdge) bs++-- | Amount of empty space to add to the right side+-- on account of all given boxes in sum.+totalRightSpacing :: [AncestorBox d] -> Int32+totalRightSpacing bs = sum $ map (edgeSpacing . boxRightEdge) bs
+ src/Data/Text/ParagraphLayout/Internal/ApplyBoxes.hs view
@@ -0,0 +1,147 @@+-- | Algorithm for finding box edges.+module Data.Text.ParagraphLayout.Internal.ApplyBoxes+ ( WithBoxes (..)+ , applyBoxes+ )+where++import Data.List.NonEmpty (NonEmpty ((:|)), (<|))+import qualified Data.List.NonEmpty as NonEmpty+import Data.Text.Glyphize (Direction (DirLTR, DirRTL))++import Data.Text.ParagraphLayout.Internal.ResolvedBox+import Data.Text.ParagraphLayout.Internal.ResolvedSpan+import Data.Text.ParagraphLayout.Internal.WithSpan++-- | Wrapper containing the original input value,+-- with added information about the box edges that it touches.+data WithBoxes d a = WithBoxes++ { leftInBoxes :: [ResolvedBox d]+ -- ^ Boxes whose left edge this item touches.++ , unwrap :: a+ -- ^ The original wrapped value.++ , rightInBoxes :: [ResolvedBox d]+ -- ^ Boxes whose right edge this item touches.++ }++type Boxed d a = WithBoxes d (WithSpan d a)++-- | Determine which horizontal items are the leftmost and which are the+-- rightmost within their ancestor boxes.+applyBoxes+ :: [ResolvedBox d]+ -- ^ Boxes open on a preceding line. Their start edge will be omitted.+ -> [ResolvedBox d]+ -- ^ Boxes open on a following line. Their end edge will be omitted.+ -> NonEmpty (WithSpan d a)+ -- ^ Box items on a given line. Must be ordered from left to right.+ -> NonEmpty (Boxed d a)+ -- ^ Box items with added information about box edges.+applyBoxes prevOpen nextOpen pfs =+ foldr (applyBox prevOpen nextOpen) items boxes+ where+ boxes = allBoxes pfs+ items = fmap initBoxes pfs++-- | Wrap an item in a minimal structure to be filled by the algorithm.+initBoxes :: WithSpan d a -> Boxed d a+initBoxes (WithSpan rs pf) = WithBoxes+ { leftInBoxes = []+ , unwrap = WithSpan rs pf+ , rightInBoxes = []+ }++-- | Determine which horizontal item is the leftmost and which is the+-- rightmost within the given ancestor box.+applyBox+ :: [ResolvedBox d]+ -- ^ Boxes open on a preceding line. Their start edge will be omitted.+ -> [ResolvedBox d]+ -- ^ Boxes open on a following line. Their end edge will be omitted.+ -> ResolvedBox d+ -- ^ The box whose edges are to be determined.+ -> NonEmpty (Boxed d a)+ -- ^ Box items with partial information about box edges.+ -> NonEmpty (Boxed d a)+ -- ^ Box items with added information about edges of the given box.+applyBox prevOpen nextOpen box =+ applyBoxEnd nextOpen box . applyBoxStart prevOpen box++-- | Determine which horizontal item, if any, is the startmost+-- within the given ancestor box.+applyBoxStart+ :: [ResolvedBox d]+ -- ^ Boxes open on a preceding line. Their start edge will be omitted.+ -> ResolvedBox d+ -- ^ Box whose start edge should be found.+ -> NonEmpty (Boxed d a)+ -- ^ Box items with partial information about box edges.+ -> NonEmpty (Boxed d a)+ -- ^ Box items with added information about the start edge of the given box.+applyBoxStart prevOpen box items+ | box `elem` prevOpen = items+ | otherwise = case boxDirection box of+ DirLTR -> pickBoxLeft box items+ DirRTL -> pickBoxRight box items+ _ -> items++-- | Determine which horizontal item, if any, is the endmost+-- within the given ancestor box.+applyBoxEnd+ :: [ResolvedBox d]+ -- ^ Boxes open on a following line. Their end edge will be omitted.+ -> ResolvedBox d+ -- ^ Box whose end edge should be found.+ -> NonEmpty (Boxed d a)+ -- ^ Box items with partial information about box edges.+ -> NonEmpty (Boxed d a)+ -- ^ Box items with added information about the end edge of the given box.+applyBoxEnd nextOpen box items+ | box `elem` nextOpen = items+ | otherwise = case boxDirection box of+ DirLTR -> pickBoxRight box items+ DirRTL -> pickBoxLeft box items+ _ -> items++-- | Pick the leftmost item on the line and apply the left edge+-- of the given box to it. This assumes that the box does not have+-- a left edge on any other line.+pickBoxLeft :: ResolvedBox d -> NonEmpty (Boxed d a) -> NonEmpty (Boxed d a)+pickBoxLeft box items = updateFirst (inBox box) (addBoxLeft box) items++-- | Pick the rightmost item on the line and apply the right edge+-- of the given box to it. This assumes that the box does not have+-- a right edge on any other line.+pickBoxRight :: ResolvedBox d -> NonEmpty (Boxed d a) -> NonEmpty (Boxed d a)+pickBoxRight box items = updateLast (inBox box) (addBoxRight box) items++-- | Determine if the given item is contained by the given box.+inBox :: ResolvedBox d -> Boxed d a -> Bool+inBox box item = box `elem` boxesOf item+ where+ boxesOf (WithBoxes _ (WithSpan rs _) _) = spanBoxes rs++-- | Apply the left edge of the given box to the given item.+addBoxLeft :: ResolvedBox d -> Boxed d a -> Boxed d a+addBoxLeft box item = item { leftInBoxes = leftInBoxes item `union` [box] }++-- | Apply the right edge of the given box to the given item.+addBoxRight :: ResolvedBox d -> Boxed d a -> Boxed d a+addBoxRight box item = item { rightInBoxes = rightInBoxes item `union` [box] }++-- | Update the first item matching the given predicate,+-- or fail if none is found.+updateFirst :: (a -> Bool) -> (a -> a) -> NonEmpty a -> NonEmpty a+updateFirst predicate updateFunc (x :| xs)+ | predicate x = (updateFunc x) :| xs+ | otherwise = x <| updateFirst predicate updateFunc (NonEmpty.fromList xs)++-- | Update the last item matching the given predicate,+-- or fail if none is found.+updateLast :: (a -> Bool) -> (a -> a) -> NonEmpty a -> NonEmpty a+updateLast predicate updateFunc list =+ NonEmpty.reverse $ updateFirst predicate updateFunc $ NonEmpty.reverse list
+ src/Data/Text/ParagraphLayout/Internal/BoxOptions.hs view
@@ -0,0 +1,52 @@+module Data.Text.ParagraphLayout.Internal.BoxOptions+ ( BoxOptions (..)+ , BoxSpacing (..)+ , defaultBoxOptions+ )+where++import Data.Int (Int32)++-- | Style options to be applied to an inline box.+--+-- This record type is likely to be extended in the future.+-- Use `defaultBoxOptions` and update it with specific record selectors+-- instead of constructing `BoxOptions` directly.+data BoxOptions = BoxOptions++ { boxSpacing :: BoxSpacing+ -- Determines amount of empty space to add before the first fragment+ -- and/or after the last fragment of this box.+ --+ -- This can be used to reserve space for a left margin, border,+ -- and/or padding.++ }+ deriving (Eq)++-- | Determines the amount of empty space to add around a box.+data BoxSpacing++ -- | Specification using absolute directions, unaffected by text direction.+ --+ -- (However, text direction is still used in case of fragmentation,+ -- to determine how to map the first (last) fragment to left (right).)+ = BoxSpacingLeftRight++ Int32+ -- ^ Amount of empty space to add to the left side of the+ -- first fragment (for LTR text) or last fragment (for RTL text)+ -- created from this box.++ Int32+ -- ^ Amount of empty space to add to the right side of the+ -- first fragment (for RTL text) or last fragment (for LTR text)+ -- created from this box.++ deriving (Eq, Show, Read)++-- | `BoxOptions` with default values.+defaultBoxOptions :: BoxOptions+defaultBoxOptions = BoxOptions+ { boxSpacing = BoxSpacingLeftRight 0 0+ }
src/Data/Text/ParagraphLayout/Internal/Fragment.hs view
@@ -1,23 +1,42 @@ module Data.Text.ParagraphLayout.Internal.Fragment ( Fragment (..) , ShapedRun- , shapedRun)+ , fragmentSpacedRect+ , shapedRun+ ) where import Data.Int (Int32) import Data.Text.Glyphize (GlyphInfo, GlyphPos) +import Data.Text.ParagraphLayout.Internal.AncestorBox import Data.Text.ParagraphLayout.Internal.Rect -- | A unit of text laid out in a rectangular area. ----- Equivalent to the CSS3 terms /box fragment/ or /fragment/, except that--- continuous text even within one line can be split into multiple fragments,--- either because it comes from multiple input spans, or because it contains--- glyphs from multiple scripts.-data Fragment = Fragment+-- Roughly equivalent to the term /text fragment/ as used in+-- [CSS Display Module Level 3](https://www.w3.org/TR/css-display-3/).+--+-- An input span (or /text sequence/ in CSS terms) can be broken into multiple+-- fragments because of line breaking, because of bidirectional ordering,+-- or because it contains glyphs from multiple scripts.+data Fragment d = Fragment - { fragmentRect :: Rect Int32+ { fragmentUserData :: d+ -- ^ User-defined data associated with the input text span that produced+ -- this fragment.++ , fragmentLine :: Int+ -- ^ Logical number of the line box holding the fragment, starting at 1.+ -- Fragments with the same line number are on the same line and will not be+ -- separated by page breaks.++ , fragmentAncestorBoxes :: [AncestorBox d]+ -- ^ Information about inline boxes which contain this fragment+ -- (starting from the nearest ancestor and continuing upwards through the+ -- tree, up to but excluding the root) and the spacing required by them.++ , fragmentRect :: Rect Int32 -- ^ Physical position of the fragment within the paragraph, calculated -- using all glyph advances in this fragment and the calculated line height. --@@ -32,6 +51,8 @@ -- the area to draw on -- you need FreeType or a similar library for that. -- -- The origin coordinates are relative to the paragraph.+ --+ -- This is the CSS equivalent of /content box/, before adding box spacing. , fragmentPen :: (Int32, Int32) -- ^ Coordinates of the initial pen position, from which the first glyph@@ -45,12 +66,29 @@ } deriving (Eq, Read, Show) +-- | Physical position of the fragment within the paragraph, with spacing+-- added to the glyph advances. This is the space that the fragment takes up+-- in the paragraph.+fragmentSpacedRect :: Fragment d -> Rect Int32+fragmentSpacedRect (Fragment { fragmentRect = r, fragmentAncestorBoxes = bs })+ | x_size r >= 0 = r+ { x_origin = x_origin r - leftSpacing+ , x_size = x_size r + leftSpacing + rightSpacing+ }+ | otherwise = r+ { x_origin = x_origin r + rightSpacing+ , x_size = x_size r - leftSpacing - rightSpacing+ }+ where+ leftSpacing = totalLeftSpacing bs+ rightSpacing = totalRightSpacing bs+ -- | A simplified representation of a box fragment, suitable for passing to a -- text drawing library but lacking detailed size information. type ShapedRun = (Int32, Int32, [(GlyphInfo, GlyphPos)]) -- | Convert a `Fragment` to a `ShapedRun`.-shapedRun :: Fragment -> ShapedRun+shapedRun :: Fragment d -> ShapedRun shapedRun f = (x, y, g) where x = x_origin r + px
+ src/Data/Text/ParagraphLayout/Internal/Layout.hs view
@@ -0,0 +1,357 @@+-- | Implementation of paragraph layout, decoupled from external interfaces.+module Data.Text.ParagraphLayout.Internal.Layout+ ( FragmentWithSpan+ , layoutAndAlignLines+ )+where++import Data.Foldable (toList)+import Data.Int (Int32)+import Data.List (mapAccumL)+import Data.List.NonEmpty (NonEmpty ((:|)), nonEmpty, (<|))+import qualified Data.List.NonEmpty as NonEmpty+import Data.Maybe (catMaybes, fromMaybe)+import Data.Text.Foreign (lengthWord8)+import Data.Text.Glyphize+ ( Buffer (..)+ , ContentType (ContentTypeUnicode)+ , Direction (DirLTR, DirRTL)+ , FontExtents (..)+ , GlyphInfo+ , GlyphPos+ , defaultBuffer+ , fontExtentsForDir+ , shape+ )+import qualified Data.Text.ICU as BreakStatus (Line (Hard))+import qualified Data.Text.Lazy as Lazy++import Data.Text.ParagraphLayout.Internal.AncestorBox+import Data.Text.ParagraphLayout.Internal.ApplyBoxes+import Data.Text.ParagraphLayout.Internal.BiDiReorder+import Data.Text.ParagraphLayout.Internal.Break+import Data.Text.ParagraphLayout.Internal.Fragment+import Data.Text.ParagraphLayout.Internal.LineHeight+import Data.Text.ParagraphLayout.Internal.ParagraphExtents+import qualified Data.Text.ParagraphLayout.Internal.ProtoFragment as PF+import qualified Data.Text.ParagraphLayout.Internal.ProtoLine as PL+import Data.Text.ParagraphLayout.Internal.Rect+import qualified Data.Text.ParagraphLayout.Internal.ResolvedBox as RB+import qualified Data.Text.ParagraphLayout.Internal.ResolvedSpan as RS+import Data.Text.ParagraphLayout.Internal.Run+import Data.Text.ParagraphLayout.Internal.TextContainer+import Data.Text.ParagraphLayout.Internal.TextOptions+import Data.Text.ParagraphLayout.Internal.WithSpan++-- This is redundant.+-- TODO: Consider using `ResolvedSpan` as `fragmentUserData`, then swapping it+-- for the actual `spanUserData` before returning it to the user.+type ProtoFragmentWithSpan d = WithSpan d PF.ProtoFragment+type FragmentWithSpan d = WithSpan d (Fragment d)+type ProtoFragmentWithBoxes d = WithBoxes d (ProtoFragmentWithSpan d)++-- | Create a multi-line layout from the given runs, splitting them as+-- necessary to fit within the requested line width.+--+-- The output is a flat list of fragments positioned in both dimensions.+layoutAndAlignLines :: Int32 -> NonEmpty (WithSpan d Run) ->+ [FragmentWithSpan d]+layoutAndAlignLines maxWidth runs = frags+ where+ frags = concatMap NonEmpty.toList fragsInLines+ (_, fragsInLines) = mapAccumL positionLineH originY numberedLines+ numberedLines = zip [1 ..] canonicalLines+ canonicalLines = fmap reorderProtoFragments logicalLines+ logicalLines = nonEmptyItems $ layoutLines maxWidth [] runs+ originY = paragraphOriginY++reorderProtoFragments :: PL.ProtoLine NonEmpty d -> PL.ProtoLine NonEmpty d+reorderProtoFragments pl@(PL.ProtoLine { PL.protoFragments = pfs }) =+ pl { PL.protoFragments = reorder pfs }++nonEmptyItems :: Foldable t =>+ t (PL.ProtoLine [] d) -> [PL.ProtoLine NonEmpty d]+nonEmptyItems = catMaybes . map PL.nonEmpty . toList++-- | Create a multi-line layout from the given runs, splitting them as+-- necessary to fit within the requested line width.+--+-- The output is a two-dimensional list of fragments positioned along the+-- horizontal axis.+layoutLines :: Int32 -> [RB.ResolvedBox d] -> NonEmpty (WithSpan d Run) ->+ NonEmpty (PL.ProtoLine [] d)+layoutLines maxWidth openBoxes runs = case nonEmpty rest of+ -- Everything fits. We are done.+ Nothing -> fitting :| []+ -- Something fits, the rest goes on the next line.+ Just runs' -> fitting <| layoutLines maxWidth openBoxes' runs'+ where+ (fitting, rest) = layoutAndWrapRunsH maxWidth openBoxes runs+ -- Update the list of open boxes using the logically last run on this+ -- line, if there is one.+ openBoxes' =+ openBoxes `fromMaybe` lastSpanBoxes (PL.protoFragments fitting)++-- TODO: Allow a run across multiple spans (e.g. if they only differ by colour).++-- | Position all the given horizontal fragments on the same line,+-- using @originY@ as its top edge, and return the bottom edge for continuation.+--+-- Glyphs will be aligned by their ascent line, similar to the behaviour of+-- @vertical-align: top@ in CSS.+--+-- TODO: For rich text, allow other types of vertical alignment.+positionLineH :: Int32 -> (Int, PL.ProtoLine NonEmpty d) ->+ (Int32, NonEmpty (FragmentWithSpan d))+positionLineH originY (num, pl) = (nextY, frags)+ where+ nextY = maximum $ fmap y_min rects+ rects = fmap (\ (WithSpan _ r) -> fragmentRect r) frags+ (_, frags) = mapAccumL (positionFragmentH num originY) originX wpfs+ wpfs = PL.applyBoxes pl+ originX = paragraphOriginX++-- | Position the given horizontal fragment on a line,+-- using @originY@ as its top edge and @originX@ as its left edge,+-- returning the X coordinate of its right edge for continuation.+positionFragmentH :: Int -> Int32 -> Int32 -> ProtoFragmentWithBoxes d ->+ (Int32, FragmentWithSpan d)+positionFragmentH line originY originX (WithBoxes lbs (WithSpan rs pf) rbs) =+ (nextX, WithSpan rs frag)+ where+ nextX = contentX + contentWidth + rightSpacing+ contentX = originX + leftSpacing+ contentWidth = PF.advance pf+ leftSpacing = totalLeftSpacing bs+ rightSpacing = totalRightSpacing bs+ frag = Fragment userData line bs rect (penX, penY) (PF.glyphs pf)+ userData = RS.spanUserData rs+ bs = ancestorBoxes lbs rbs rs+ rect = Rect contentX originY contentWidth (-lineHeight)+ penX = 0+ penY = descent + leading `div` 2 - lineHeight+ lineHeight = case textLineHeight opts of+ Normal -> normalLineHeight+ Absolute h -> h+ leading = lineHeight - normalLineHeight+ normalLineHeight = ascent + descent+ ascent = ascender extents+ descent = - descender extents+ extents = fontExtentsForDir (textFont opts) (PF.direction pf)+ opts = RS.spanTextOptions rs++ancestorBoxes+ :: [RB.ResolvedBox d]+ -> [RB.ResolvedBox d]+ -> RS.ResolvedSpan d+ -> [AncestorBox d]+ancestorBoxes leftBoxes rightBoxes rs = map ancestorBox $ RS.spanBoxes rs+ where+ ancestorBox b = case RB.boxDirection b of+ DirLTR -> AncestorBox+ { boxUserData = RB.boxUserData b+ , boxLeftEdge = leftEdge b+ , boxRightEdge = rightEdge b+ , boxStartEdge = leftEdge b+ , boxEndEdge = rightEdge b+ }+ DirRTL -> AncestorBox+ { boxUserData = RB.boxUserData b+ , boxLeftEdge = leftEdge b+ , boxRightEdge = rightEdge b+ , boxStartEdge = rightEdge b+ , boxEndEdge = leftEdge b+ }+ _ -> AncestorBox+ { boxUserData = RB.boxUserData b+ , boxLeftEdge = NoEdge+ , boxRightEdge = NoEdge+ , boxStartEdge = NoEdge+ , boxEndEdge = NoEdge+ }+ leftEdge b = if b `elem` leftBoxes+ then SpacedEdge $ RB.boxLeftSpacing b+ else NoEdge+ rightEdge b = if b `elem` rightBoxes+ then SpacedEdge $ RB.boxRightSpacing b+ else NoEdge++-- | Calculate layout for multiple horizontal runs, breaking them as necessary+-- to fit as much content as possible without exceeding the maximum line width,+-- and return the remaining runs to be placed on other lines.+layoutAndWrapRunsH+ :: Int32+ -> [RB.ResolvedBox d]+ -> NonEmpty (WithSpan d Run)+ -> (PL.ProtoLine [] d, [WithSpan d Run])+layoutAndWrapRunsH maxWidth prevOpenBoxes runs = NonEmpty.head $ validProtoLines+ where+ validProtoLines = dropWhile1 tooLong layouts+ tooLong (pl, _) = PL.width pl > maxWidth+ layouts = fmap fstToProtoLine splits+ fstToProtoLine (runs1, runs2) =+ (protoLine prevOpenBoxes (layoutRunsH runs1) runs2, runs2)+ -- TODO: Consider optimising.+ -- We do not need to look for soft breaks further than the+ -- shortest hard break.+ splits = hardSplit runs :| softSplits runs++-- | Construct a `ProtoLine`, peeking at the text run on the following line+-- to determine `nextOpenBoxes`.+protoLine+ :: [RB.ResolvedBox d]+ -> [ProtoFragmentWithSpan d]+ -> [WithSpan d Run]+ -> PL.ProtoLine [] d+protoLine prev pfs rest = PL.ProtoLine pfs prev next+ where+ next = [] `fromMaybe` firstSpanBoxes rest++firstSpanBoxes :: [WithSpan d a] -> Maybe [RB.ResolvedBox d]+firstSpanBoxes xs = case xs of+ [] -> Nothing+ (WithSpan rs _) : _ -> Just $ RS.spanBoxes rs++lastSpanBoxes :: [WithSpan d a] -> Maybe [RB.ResolvedBox d]+lastSpanBoxes xs = case reverse xs of+ [] -> Nothing+ (WithSpan rs _) : _ -> Just $ RS.spanBoxes rs++-- | Treat a list of runs as a contiguous sequence, and split them into two+-- lists so that the first list contains as many non-whitespace characters as+-- possible without crossing a hard line break (typically after a newline+-- character).+--+-- If the input is non-empty and starts with a hard line break, then the first+-- output list will contain a run of zero characters. This can be used to+-- correctly size an empty line.+--+-- If there is no hard line break in the input, the first output list will+-- contain the whole input, and the second output list will be empty.+hardSplit :: NonEmpty (WithSpan d Run) -> ([WithSpan d Run], [WithSpan d Run])+hardSplit runs = allowFstEmpty $ trimFst $ NonEmpty.last $ splits+ where+ trimFst (runs1, runs2) = (trim runs1, runs2)+ trim+ = trimTextsStartPreserve isStartSpace+ . trimTextsEndPreserve isEndSpace+ . trimTextsEndPreserve isNewline+ -- TODO: Consider optimising.+ -- We do not need to look for any line breaks further than the+ -- shortest hard break.+ splits = noSplit :| map allowSndEmpty hSplits+ noSplit = (runs, [])+ hSplits = -- from longest to shortest+ splitTextsBy (map fst . filter isHard . runLineBreaks) runs+ isHard (_, status) = status == BreakStatus.Hard++-- | Treat a list of runs as a contiguous sequence,+-- and find all possible ways to split them into two non-empty lists,+-- using soft line break opportunities (typically after words) and then+-- using character boundaries.+--+-- Runs of zero characters will not be created. If line breaking would result+-- in a line that consists entirely of whitespace, this whitespace will be+-- skipped, so an empty line is not created.+--+-- The results in the form (prefix, suffix) will be ordered so that items+-- closer to the start of the list are preferred for line breaking, but without+-- considering overflows.+softSplits :: NonEmpty (WithSpan d Run) ->+ [([WithSpan d Run], [WithSpan d Run])]+softSplits runs = map (allowSndEmpty . trimFst) splits+ where+ trimFst (runs1, runs2) = (trim runs1, runs2)+ trim = trimTextsStart isStartSpace . trimTextsEnd isEndSpace+ splits = lSplits ++ cSplits+ lSplits = splitTextsBy (map fst . runLineBreaks) runs+ -- TODO: Consider optimising.+ -- We do not need to look for character breaks further than the+ -- shortest line break.+ cSplits = splitTextsBy (map fst . runCharacterBreaks) runs++allowFstEmpty :: (NonEmpty a, b) -> ([a], b)+allowFstEmpty (a, b) = (NonEmpty.toList a, b)++allowSndEmpty :: (a, NonEmpty b) -> (a, [b])+allowSndEmpty (a, b) = (a, NonEmpty.toList b)++-- | The suffix remaining after removing the longest prefix of the list for+-- which the predicate holds, except always including at least the last element+-- of the original list.+dropWhile1 :: (a -> Bool) -> NonEmpty a -> NonEmpty a+dropWhile1 p list = case NonEmpty.uncons list of+ (_, Nothing) -> list+ (x, Just xs) -> if p x+ then dropWhile1 p xs+ else list++-- | Calculate layout for multiple horizontal runs on the same line, without+-- any breaking.+layoutRunsH :: [WithSpan d Run] -> [ProtoFragmentWithSpan d]+layoutRunsH runs = map layoutRunH runs++-- | Calculate layout for the given horizontal run and attach extra information.+layoutRunH :: WithSpan d Run -> ProtoFragmentWithSpan d+layoutRunH (WithSpan rs run) = WithSpan rs pf+ where+ pf = PF.protoFragmentH dir glyphs+ glyphs = shapeRun (WithSpan rs run)+ dir = runDirection run++-- | Calculate layout for the given run independently of its position.+shapeRun :: WithSpan d Run -> [(GlyphInfo, GlyphPos)]+shapeRun (WithSpan rs run) = shape font buffer features+ where+ font = textFont opts+ buffer = defaultBuffer+ { text = Lazy.fromStrict $ runText run+ , contentType = Just ContentTypeUnicode+ , direction = runDirection run+ , script = runScript run+ , language = Just $ textLanguage opts+ -- Perhaps counter-intuitively, the `beginsText` and `endsText`+ -- flags refer to everything that "Data.Text.Glyphize" can see,+ -- not just the current run.+ --+ -- Since all runs are cut from a single continuous `Text` that+ -- represents the entire paragraph, and "Data.Text.Glyphize" peeks+ -- at the whole underlying byte array, HarfBuzz will be able to see+ -- both the beginning and the end of the paragraph at all times,+ -- so these flags can always be set.+ , beginsText = True+ , endsText = True+ }+ features = []+ opts = RS.spanTextOptions rs++runLineBreaks :: WithSpan d Run -> [(Int, BreakStatus.Line)]+runLineBreaks (WithSpan rs run) =+ runBreaksFromSpan run $ RS.spanLineBreaks rs++runCharacterBreaks :: WithSpan d Run -> [(Int, ())]+runCharacterBreaks (WithSpan rs run) =+ runBreaksFromSpan run $ RS.spanCharacterBreaks rs++-- | Constrain span breaks to a selected run and adjust offsets.+runBreaksFromSpan :: Run -> [(Int, a)] -> [(Int, a)]+runBreaksFromSpan run spanBreaks =+ dropWhile (not . valid) $ subOffsetsDesc (runOffsetInSpan run) spanBreaks+ where+ valid (off, _) = off < runLength+ runLength = lengthWord8 $ getText run++-- | Predicate for characters that can be potentially removed from the+-- beginning of a line according to the CSS Text Module.+isStartSpace :: Char -> Bool+isStartSpace c = c `elem` [' ', '\t']++-- | Predicate for characters that can be potentially removed from the end of+-- a line according to the CSS Text Module.+isEndSpace :: Char -> Bool+isEndSpace c = c `elem` [' ', '\t', '\x1680']++-- | Predicate for characters that should be removed from the end of a line in+-- the case of a hard line break.+isNewline :: Char -> Bool+isNewline c = c == '\n'
src/Data/Text/ParagraphLayout/Internal/Paginable.hs view
@@ -2,6 +2,7 @@ ( PageOptions (..) , Paginable , paginate+ , paginateAll ) where @@ -9,7 +10,10 @@ import Data.Text.ParagraphLayout.Internal.LinePagination import Data.Text.ParagraphLayout.Internal.ParagraphLine-import Data.Text.ParagraphLayout.Internal.Plain.ParagraphLayout+import qualified Data.Text.ParagraphLayout.Internal.Plain.ParagraphLayout+ as Plain+import qualified Data.Text.ParagraphLayout.Internal.Rich.ParagraphLayout+ as Rich -- | Defines options for breaking a layout into pages. data PageOptions = PageOptions@@ -74,7 +78,26 @@ -- | Implementation of paginating a plain text paragraph layout. -- Breaks the layout on page boundaries and automatically adjusts coordinates.-instance Paginable ParagraphLayout where- paginate opts pl = case paginate opts (cutLines pl) of+instance Paginable (Plain.ParagraphLayout d) where+ paginate = paginateLayout++-- | Implementation of paginating a rich text paragraph layout.+-- Breaks the layout on page boundaries and automatically adjusts coordinates.+instance Paginable (Rich.ParagraphLayout d) where+ paginate = paginateLayout++paginateLayout :: (Line a, GenericLayout a) =>+ PageOptions -> a -> (PageContinuity, a, Maybe a)+paginateLayout opts pl =+ case paginate opts (cutLines pl) of (c, p, Nothing) -> (c, mergeLines p, Nothing) (c, p, Just rest) -> (c, mergeLines p, Just (mergeLines rest))++-- | Perform page breaking on the entire input, returning a list of pages.+paginateAll :: Paginable a => PageOptions -> a -> [(PageContinuity, a)]+paginateAll opts pl = case paginate opts pl of+ (c, pl1, next) -> (c, pl1) : case next of+ Just pl2 -> paginateAll opts' pl2+ Nothing -> []+ where+ opts' = opts { pageCurrentHeight = pageNextHeight opts }
src/Data/Text/ParagraphLayout/Internal/ParagraphConstruction.hs view
@@ -19,28 +19,30 @@ -- | Create first span with optional ignored suffix. infixr 5 >|-(>|) :: (SpanOptions, String) -> String -> (Lazy.Text, [Span])+(>|) :: (SpanOptions, String) -> String -> (Lazy.Text, [Span ()]) (spanLanguage, spanText) >| suffix = (newText, newSpans) where newSpans = [newSpan]- newSpan = Span (lengthWord8 packedSpanText) spanLanguage+ newSpan = Span () (lengthWord8 packedSpanText) spanLanguage newText = chunk packedSpanText (chunk packedSuffix empty) packedSpanText = pack spanText packedSuffix = pack suffix -- | Create next span. infixr 5 >|<-(>|<) :: (SpanOptions, String) -> (Lazy.Text, [Span]) -> (Lazy.Text, [Span])-(spanLanguage, spanText) >|< (oldText, oldSpans) = (newText, newSpans)+(>|<) :: (SpanOptions, String) -> (Lazy.Text, [Span ()]) ->+ (Lazy.Text, [Span ()])+(spanLanguage, spanText) >|< (oldText, oldSpans) =+ (newText, newSpans) where newSpans = newSpan : oldSpans- newSpan = Span (lengthWord8 packedSpanText) spanLanguage+ newSpan = Span () (lengthWord8 packedSpanText) spanLanguage newText = chunk packedSpanText oldText packedSpanText = pack spanText -- | Add optional ignored prefix and wrap in a `Paragraph`. infixr 5 |<-(|<) :: String -> (Lazy.Text, [Span]) -> ParagraphOptions -> Paragraph+(|<) :: String -> (Lazy.Text, [Span ()]) -> ParagraphOptions -> Paragraph () prefix |< (oldText, spans) = Paragraph arr afterPrefix spans where (Text arr beforePrefix _) = toStrict $ chunk packedPrefix oldText@@ -49,5 +51,5 @@ -- | Create a `Paragraph` with no spans, just two ignored texts. infixr 5 |<>|-(|<>|) :: String -> String -> ParagraphOptions -> Paragraph+(|<>|) :: String -> String -> ParagraphOptions -> Paragraph () prefix |<>| suffix = prefix |< (chunk (pack suffix) empty, [])
+ src/Data/Text/ParagraphLayout/Internal/ParagraphExtents.hs view
@@ -0,0 +1,26 @@+module Data.Text.ParagraphLayout.Internal.ParagraphExtents+ ( paragraphOriginX+ , paragraphOriginY+ , containRects+ , emptyRect+ )+where++import Data.Text.ParagraphLayout.Internal.Rect++paragraphOriginX :: (Num a) => a+paragraphOriginX = 0++paragraphOriginY :: (Num a) => a+paragraphOriginY = 0++emptyRect :: (Num a) => Rect a+emptyRect = Rect+ { x_origin = paragraphOriginX+ , y_origin = paragraphOriginY+ , x_size = 0+ , y_size = 0+ }++containRects :: (Ord a, Num a) => [Rect a] -> Rect a+containRects = foldr union emptyRect
src/Data/Text/ParagraphLayout/Internal/ParagraphLine.hs view
@@ -1,5 +1,6 @@+-- | Splitting paragraph layouts between lines. module Data.Text.ParagraphLayout.Internal.ParagraphLine- ( ParagraphLine+ ( GenericLayout , cutLines , mergeLines )@@ -9,59 +10,92 @@ import qualified Data.List.NonEmpty as NonEmpty import Data.Text.ParagraphLayout.Internal.Fragment-import Data.Text.ParagraphLayout.Internal.LinePagination-import Data.Text.ParagraphLayout.Internal.Plain.ParagraphLayout+import qualified Data.Text.ParagraphLayout.Internal.Plain.ParagraphLayout as P+import qualified Data.Text.ParagraphLayout.Internal.Rich.ParagraphLayout as R import Data.Text.ParagraphLayout.Internal.Rect --- | Represents one line of a `ParagraphLayout`.-newtype ParagraphLine = ParagraphLine ParagraphLayout+class GenericLayout pl where -instance Line ParagraphLine where- lineHeight (ParagraphLine pl) = height $ paragraphRect pl+ -- | A layout with no content, to be used as an identity for appending.+ empty :: pl --- | Split the given `ParagraphLayout` into individual lines.-cutLines :: ParagraphLayout -> [ParagraphLine]-cutLines pl = map (\ y -> cutLine y pl) (lineOrigins pl)+ -- | Rectangle surrounding the layout, to be used for appending.+ rect :: pl -> Rect Int32 --- | Reduce the given `ParagraphLayout` to fragments with the given `y_origin`.------ This assumes that each line consists of fragments of equal height and that--- there is no space between lines.------ TODO: Use line numbers to support rich text.-cutLine :: Int32 -> ParagraphLayout -> ParagraphLine-cutLine y pl = ParagraphLine $ shiftFragments (-y) $ limitFragments y pl+ -- | Actual distance between the paragraph origin and the nearest fragment.+ topDistance :: pl -> Int32 -lineOrigins :: ParagraphLayout -> [Int32]-lineOrigins pl = dedupe $ map (y_origin . fragmentRect) $ paragraphFragments pl+ -- | A list of all unique line numbers that have laid out content.+ lineNumbers :: pl -> [Int] + -- | Keep only fragments with the given line number.+ limitFragments :: Int -> pl -> pl++ -- | Add @dy@ to each fragment's `y_origin`.+ shiftFragments :: Int32 -> pl -> pl++ -- | Combine fragments from two layouts into one,+ -- without any adjustment of coordinates.+ appendFragments :: pl -> pl -> pl++instance GenericLayout (P.ParagraphLayout d) where+ empty = P.emptyParagraphLayout+ rect = P.paragraphRect+ topDistance pl = topFragmentOrigin $ P.paragraphFragments pl+ lineNumbers pl = uniqueFragmentLines $ P.paragraphFragments pl+ limitFragments n = P.filterFragments (fragmentIsOnLine n)+ shiftFragments dy = P.mapFragments (shiftFragment dy)+ appendFragments = P.appendFragments++instance GenericLayout (R.ParagraphLayout d) where+ empty = R.emptyParagraphLayout+ rect = R.paragraphRect+ topDistance pl = topFragmentOrigin $ R.paragraphFragments pl+ lineNumbers pl = uniqueFragmentLines $ R.paragraphFragments pl+ limitFragments n = R.filterFragments (fragmentIsOnLine n)+ shiftFragments dy = R.mapFragments (shiftFragment dy)+ appendFragments = R.appendFragments++-- | Split the given `ParagraphLayout` into single-line layouts.+cutLines :: GenericLayout pl => pl -> [pl]+cutLines pl = map (\ n -> cutLine n pl) (lineNumbers pl)++-- | Reduce the given `ParagraphLayout` to fragments with the given line number.+cutLine :: GenericLayout pl => Int -> pl -> pl+cutLine n pl = trimTop $ limitFragments n pl++-- | Add a constant to each fragment's `y_origin` so that their maximum is zero.+trimTop :: GenericLayout pl => pl -> pl+trimTop pl = shiftFragments (-topDistance pl) pl++topFragmentOrigin :: [Fragment d] -> Int32+topFragmentOrigin frags = maximum $ map (y_origin . fragmentRect) frags++uniqueFragmentLines :: [Fragment d] -> [Int]+uniqueFragmentLines frags = dedupe $ map fragmentLine frags+ -- | Remove duplicates from a sorted list. dedupe :: Eq a => [a] -> [a] dedupe xs = map NonEmpty.head $ NonEmpty.group xs --- | Combine the given `ParagraphLine`s into a `ParagraphLayout` by merging--- their fragments.-mergeLines :: [ParagraphLine] -> ParagraphLayout-mergeLines lls = foldl mergeLine emptyParagraphLayout lls+-- | Put the given `ParagraphLayout`s together as a vertically contiguous+-- sequence.+mergeLines :: GenericLayout pl => [pl] -> pl+mergeLines lls = foldl mergeLine empty lls -mergeLine :: ParagraphLayout -> ParagraphLine -> ParagraphLayout-mergeLine pl (ParagraphLine nextLine) = pl'+mergeLine :: GenericLayout pl => pl -> pl -> pl+mergeLine pl nextLine = pl' where -- Quadratic time complexity. TODO: Consider optimising. pl' = appendFragments pl $ shiftFragments y nextLine- y = y_terminus $ paragraphRect pl---- | Add @dy@ to each fragment's `y_origin`.-shiftFragments :: Int32 -> ParagraphLayout -> ParagraphLayout-shiftFragments dy = mapFragments (shiftFragment dy)+ y = y_terminus $ rect pl -shiftFragment :: Int32 -> Fragment -> Fragment+shiftFragment :: Int32 -> Fragment d -> Fragment d shiftFragment dy f = f' where f' = f { fragmentRect = r' } r' = r { y_origin = y_origin r + dy } r = fragmentRect f --- | Keep only fragments with the given `y_origin` value.-limitFragments :: Int32 -> ParagraphLayout -> ParagraphLayout-limitFragments y = filterFragments ((== y) . y_origin . fragmentRect)+fragmentIsOnLine :: Int -> Fragment d -> Bool+fragmentIsOnLine n frag = n == fragmentLine frag
src/Data/Text/ParagraphLayout/Internal/ParagraphOptions.hs view
@@ -1,14 +1,19 @@ module Data.Text.ParagraphLayout.Internal.ParagraphOptions ( ParagraphOptions (..)+ , defaultParagraphOptions ) where import Data.Int (Int32)-import Data.Text.Glyphize (Font)+import Data.Text.Glyphize (Font, emptyFont) import Data.Text.ParagraphLayout.Internal.LineHeight -- | Defines options relevant to the entire paragraph.+--+-- This record type is likely to be extended in the future.+-- Use `defaultParagraphOptions` and update it with specific record selectors+-- instead of constructing `ParagraphOptions` directly. data ParagraphOptions = ParagraphOptions { paragraphFont :: Font@@ -17,7 +22,7 @@ -- the same units that you want in the output. , paragraphLineHeight :: LineHeight- -- ^ Preferred line height of the resulting box fragments.+ -- ^ Preferred line height of the resulting fragments. , paragraphMaxWidth :: Int32 -- ^ Line width at which line breaking should occur.@@ -27,4 +32,12 @@ -- be further broken down, it will overflow. }- deriving (Eq, Show)+ deriving (Eq)++-- | `ParagraphOptions` with default values.+defaultParagraphOptions :: ParagraphOptions+defaultParagraphOptions = ParagraphOptions+ { paragraphFont = emptyFont+ , paragraphLineHeight = Normal+ , paragraphMaxWidth = maxBound+ }
src/Data/Text/ParagraphLayout/Internal/Plain.hs view
@@ -1,321 +1,81 @@+-- | Legacy plain text layout interface. module Data.Text.ParagraphLayout.Internal.Plain (layoutPlain) where -import Control.Applicative (ZipList (ZipList), getZipList)-import Data.Foldable (toList)-import Data.Int (Int32)-import Data.List (mapAccumL)-import Data.List.NonEmpty (NonEmpty ((:|)), nonEmpty, (<|))-import qualified Data.List.NonEmpty as NonEmpty-import Data.Maybe (catMaybes)-import Data.Text (Text)-import Data.Text.Foreign (lengthWord8)-import Data.Text.Glyphize- ( Buffer (..)- , ContentType (ContentTypeUnicode)- , FontExtents (..)- , GlyphInfo- , GlyphPos- , defaultBuffer- , fontExtentsForDir- , shape- )-import Data.Text.ICU (Breaker, LocaleName, breakCharacter, breakLine)-import qualified Data.Text.ICU as BreakStatus (Line (Hard))-import qualified Data.Text.Lazy as Lazy+import Data.Text.Glyphize (Direction (DirLTR)) -import Data.Text.ParagraphLayout.Internal.BiDiReorder-import Data.Text.ParagraphLayout.Internal.Break+import Data.Text.ParagraphLayout.Internal.AncestorBox+import Data.Text.ParagraphLayout.Internal.BoxOptions import Data.Text.ParagraphLayout.Internal.Fragment-import Data.Text.ParagraphLayout.Internal.LineHeight import Data.Text.ParagraphLayout.Internal.ParagraphOptions-import Data.Text.ParagraphLayout.Internal.Plain.Paragraph-import Data.Text.ParagraphLayout.Internal.Plain.ParagraphLayout-import qualified Data.Text.ParagraphLayout.Internal.ProtoFragment as PF-import Data.Text.ParagraphLayout.Internal.Rect-import Data.Text.ParagraphLayout.Internal.ResolvedSpan (WithSpan (WithSpan))-import qualified Data.Text.ParagraphLayout.Internal.ResolvedSpan as RS-import Data.Text.ParagraphLayout.Internal.Run+import qualified Data.Text.ParagraphLayout.Internal.Plain.Paragraph as P+import qualified Data.Text.ParagraphLayout.Internal.Plain.ParagraphLayout as P+import Data.Text.ParagraphLayout.Internal.Rich (layoutRich)+import qualified Data.Text.ParagraphLayout.Internal.Rich.Paragraph as R+import qualified Data.Text.ParagraphLayout.Internal.Rich.ParagraphLayout as R import Data.Text.ParagraphLayout.Internal.Span-import Data.Text.ParagraphLayout.Internal.TextContainer---- | Lay out a paragraph of plain, unidirectional text using a single font.-layoutPlain :: Paragraph -> ParagraphLayout-layoutPlain p@(Paragraph _ _ _ opts) = paragraphLayout sls- where- sls = map SpanLayout fragsBySpan- fragsBySpan = take (length spans) $ RS.splitBySpanIndex frags- frags = case nonEmpty wrappedRuns of- Just xs -> layoutAndAlignLines maxWidth xs- Nothing -> []- wrappedRuns = spansToRunsWrapped spans- maxWidth = paragraphMaxWidth opts- spans = resolveSpans p---- | Split a number of spans into a flat array of runs and add a wrapper--- so that each run can be traced back to its originating span.-spansToRunsWrapped :: [RS.ResolvedSpan] -> [WithSpan Run]-spansToRunsWrapped ss = concat $ map spanToRunsWrapped ss---- | Split a span into runs and add a wrapper--- so that each run can be traced back to its originating span.-spanToRunsWrapped :: RS.ResolvedSpan -> [WithSpan Run]-spanToRunsWrapped s = map (WithSpan s) (spanToRuns s)---- | Create a multi-line layout from the given runs, splitting them as--- necessary to fit within the requested line width.------ The output is a flat list of fragments positioned in both dimensions.-layoutAndAlignLines :: Int32 -> NonEmpty (WithSpan Run) -> [WithSpan Fragment]-layoutAndAlignLines maxWidth runs = frags- where- frags = concatMap NonEmpty.toList fragsInLines- (_, fragsInLines) = mapAccumL positionLineH originY canonicalLines- canonicalLines = fmap reorder logicalLines- logicalLines = nonEmptyItems $ layoutLines maxWidth runs- originY = paragraphOriginY--nonEmptyItems :: Foldable t => t [a] -> [NonEmpty a]-nonEmptyItems = catMaybes . map nonEmpty . toList---- | Create a multi-line layout from the given runs, splitting them as--- necessary to fit within the requested line width.------ The output is a two-dimensional list of fragments positioned along the--- horizontal axis.-layoutLines ::- Int32 -> NonEmpty (WithSpan Run) -> NonEmpty [WithSpan PF.ProtoFragment]-layoutLines maxWidth runs = case nonEmpty rest of- -- Everything fits. We are done.- Nothing -> NonEmpty.singleton fitting- -- Something fits, the rest goes on the next line.- Just rest' -> fitting <| layoutLines maxWidth rest'- where- (fitting, rest) = layoutAndWrapRunsH maxWidth runs---- TODO: Allow a run across multiple spans (e.g. if they only differ by colour).---- | Position all the given horizontal fragments on the same line,--- using @originY@ as its top edge, and return the bottom edge for continuation.------ Glyphs will be aligned by their ascent line, similar to the behaviour of--- @vertical-align: top@ in CSS.------ TODO: For rich text, allow other types of vertical alignment.-positionLineH :: Int32 -> NonEmpty (WithSpan PF.ProtoFragment) ->- (Int32, NonEmpty (WithSpan Fragment))-positionLineH originY pfs = (nextY, frags)- where- nextY = maximum $ fmap y_min rects- rects = fmap (\ (WithSpan _ r) -> fragmentRect r) frags- (_, frags) = mapAccumL (positionFragmentH originY) originX pfs- originX = paragraphOriginX---- | Position the given horizontal fragment on a line,--- using @originY@ as its top edge and @originX@ as its left edge,--- returning the X coordinate of its right edge for continuation.-positionFragmentH ::- Int32 -> Int32 -> WithSpan PF.ProtoFragment -> (Int32, WithSpan Fragment)-positionFragmentH originY originX (WithSpan rs pf) = (nextX, WithSpan rs frag)- where- nextX = originX + PF.advance pf- frag = Fragment rect (penX, penY) (PF.glyphs pf)- rect = Rect originX originY (PF.advance pf) (-lineHeight)- penX = 0- penY = descent + leading `div` 2 - lineHeight- lineHeight = case RS.spanLineHeight rs of- Normal -> normalLineHeight- Absolute h -> h- leading = lineHeight - normalLineHeight- normalLineHeight = ascent + descent- ascent = ascender extents- descent = - descender extents- extents = fontExtentsForDir font (PF.direction pf)- font = RS.spanFont rs+import Data.Text.ParagraphLayout.Internal.TextOptions+import Data.Text.ParagraphLayout.Internal.Tree --- | Calculate layout for multiple horizontal runs, breaking them as necessary--- to fit as much content as possible without exceeding the maximum line width,--- and return the remaining runs to be placed on other lines.-layoutAndWrapRunsH :: Int32 -> NonEmpty (WithSpan Run) ->- ([WithSpan PF.ProtoFragment], [WithSpan Run])-layoutAndWrapRunsH maxWidth runs = NonEmpty.head $ validLayouts- where- validLayouts = dropWhile1 tooLong layouts- tooLong (pfs, _) = totalAdvances pfs > maxWidth- layouts = fmap layoutFst splits- layoutFst (runs1, runs2) = (layoutRunsH runs1, runs2)- -- TODO: Consider optimising.- -- We do not need to look for soft breaks further than the- -- shortest hard break.- splits = hardSplit runs :| softSplits runs+-- | Lay out a paragraph of plain text using a single font.+layoutPlain :: P.Paragraph d -> P.ParagraphLayout d+layoutPlain p@(P.Paragraph _ _ spans _) =+ richLayoutToPlain (length spans) $ layoutRich $ plainToRich p --- | Treat a list of runs as a contiguous sequence, and split them into two--- lists so that the first list contains as many non-whitespace characters as--- possible without crossing a hard line break (typically after a newline--- character).+-- | Convert a legacy plain text paragraph to a rich text paragraph. ----- If the input is non-empty and starts with a hard line break, then the first--- output list will contain a run of zero characters. This can be used to--- correctly size an empty line.+-- Each plain text span is converted to a box with one text node inside. ----- If there is no hard line break in the input, the first output list will--- contain the whole input, and the second output list will be empty.-hardSplit :: NonEmpty (WithSpan Run) -> ([WithSpan Run], [WithSpan Run])-hardSplit runs = allowFstEmpty $ trimFst $ NonEmpty.last $ splits+-- Span indexes are added to the user data internally, then used to split the+-- resulting fragments according to their corresponding spans.+plainToRich :: P.Paragraph d -> R.Paragraph (Int, d)+plainToRich (P.Paragraph arr off spans opts) = R.Paragraph arr off rootNode opts where- trimFst (runs1, runs2) = (trim runs1, runs2)- trim- = trimTextsStartPreserve isStartSpace- . trimTextsEndPreserve isEndSpace- . trimTextsEndPreserve isNewline- -- TODO: Consider optimising.- -- We do not need to look for any line breaks further than the- -- shortest hard break.- splits = noSplit :| map allowSndEmpty hSplits- noSplit = (runs, [])- hSplits = -- from longest to shortest- splitTextsBy (map fst . filter isHard . runLineBreaks) runs- isHard (_, status) = status == BreakStatus.Hard+ rootNode = RootBox rootBox+ rootBox = Box spanNodes baseOpts+ spanNodes = map spanNode indexedSpans+ spanNode (i, s) = InlineBox+ (i, spanUserData s)+ (boxFromPlain baseOpts i s)+ defaultBoxOptions+ indexedSpans = zip [0 ..] spans+ baseOpts = (defaultTextOptions DirLTR)+ { textFont = paragraphFont opts+ , textLineHeight = paragraphLineHeight opts+ } --- | Treat a list of runs as a contiguous sequence,--- and find all possible ways to split them into two non-empty lists,--- using soft line break opportunities (typically after words) and then--- using character boundaries.------ Runs of zero characters will not be created. If line breaking would result--- in a line that consists entirely of whitespace, this whitespace will be--- skipped, so an empty line is not created.+-- | Convert a legacy `Span` to a rich text box with one text node inside. ----- The results in the form (prefix, suffix) will be ordered so that items--- closer to the start of the list are preferred for line breaking, but without--- considering overflows.-softSplits :: NonEmpty (WithSpan Run) -> [([WithSpan Run], [WithSpan Run])]-softSplits runs = map (allowSndEmpty . trimFst) splits- where- trimFst (runs1, runs2) = (trim runs1, runs2)- trim = trimTextsStart isStartSpace . trimTextsEnd isEndSpace- splits = lSplits ++ cSplits- lSplits = splitTextsBy (map fst . runLineBreaks) runs- -- TODO: Consider optimising.- -- We do not need to look for character breaks further than the- -- shortest line break.- cSplits = splitTextsBy (map fst . runCharacterBreaks) runs--allowFstEmpty :: (NonEmpty a, b) -> ([a], b)-allowFstEmpty (a, b) = (NonEmpty.toList a, b)--allowSndEmpty :: (a, NonEmpty b) -> (a, [b])-allowSndEmpty (a, b) = (a, NonEmpty.toList b)---- | The suffix remaining after removing the longest prefix of the list for--- which the predicate holds, except always including at least the last element--- of the original list.-dropWhile1 :: (a -> Bool) -> NonEmpty a -> NonEmpty a-dropWhile1 p list = case NonEmpty.uncons list of- (_, Nothing) -> list- (x, Just xs) -> if p x- then dropWhile1 p xs- else list---- | Calculate layout for multiple horizontal runs on the same line, without--- any breaking.-layoutRunsH :: [WithSpan Run] -> [WithSpan PF.ProtoFragment]-layoutRunsH runs = map layoutRunH runs---- | Sum of all advances within the given fragments.-totalAdvances :: [WithSpan PF.ProtoFragment] -> Int32-totalAdvances pfs = sum $ map (\ (WithSpan _ pf) -> PF.advance pf) pfs---- | Calculate layout for the given horizontal run and attach extra information.-layoutRunH :: WithSpan Run -> WithSpan PF.ProtoFragment-layoutRunH (WithSpan rs run) = WithSpan rs pf+-- Add the given index to the user data, so that it can be extracted later.+boxFromPlain :: TextOptions -> Int -> Span d -> Box Int (Int, d)+boxFromPlain baseOpts i s = Box [TextSequence (i, spanUserData s) len] opts where- pf = PF.protoFragmentH dir glyphs- glyphs = shapeRun (WithSpan rs run)- dir = runDirection run+ len = spanLength s+ opts = baseOpts { textLanguage = spanLanguage $ spanOptions s } --- | Calculate layout for the given run independently of its position.-shapeRun :: WithSpan Run -> [(GlyphInfo, GlyphPos)]-shapeRun (WithSpan rs run) = shape font buffer features+-- | Convert a rich paragraph layout with span indexes into the legacy paragraph+-- layout with an array of spans.+richLayoutToPlain :: Int -> R.ParagraphLayout (Int, d) -> P.ParagraphLayout d+richLayoutToPlain numSpans pl = P.paragraphLayout sls where- font = RS.spanFont rs- buffer = defaultBuffer- { text = Lazy.fromStrict $ runText run- , contentType = Just ContentTypeUnicode- , direction = runDirection run- , script = runScript run- , language = Just $ RS.spanLanguage rs- -- Perhaps counter-intuitively, the `beginsText` and `endsText`- -- flags refer to everything that "Data.Text.Glyphize" can see,- -- not just the current run.- --- -- Since all runs are cut from a single continuous `Text` that- -- represents the entire paragraph, and "Data.Text.Glyphize" peeks- -- at the whole underlying byte array, HarfBuzz will be able to see- -- both the beginning and the end of the paragraph at all times,- -- so these flags can always be set.- , beginsText = True- , endsText = True- }- features = []--resolveSpans :: Paragraph -> [RS.ResolvedSpan]-resolveSpans p@(Paragraph _ pStart spans pOpts) = do- let sBounds = paragraphSpanBounds p- let sTexts = paragraphSpanTexts p- let pText = paragraphText p- let sStarts = NonEmpty.init sBounds-- (i, s, sStart, sText) <- getZipList $ (,,,)- <$> ZipList [0 ..]- <*> ZipList spans- <*> ZipList sStarts- <*> ZipList sTexts- let lang = spanLanguage $ spanOptions s- let lBreaks = paragraphBreaks breakLine pText lang- let cBreaks = paragraphBreaks breakCharacter pText lang- return RS.ResolvedSpan- { RS.spanIndex = i- , RS.spanOffsetInParagraph = sStart - pStart- , RS.spanText = sText- , RS.spanFont = paragraphFont pOpts- , RS.spanLineHeight = paragraphLineHeight pOpts- , RS.spanLanguage = lang- , RS.spanLineBreaks = subOffsetsDesc (sStart - pStart) lBreaks- , RS.spanCharacterBreaks = subOffsetsDesc (sStart - pStart) cBreaks- }--paragraphBreaks :: (LocaleName -> Breaker a) -> Text -> String -> [(Int, a)]-paragraphBreaks breakFunc txt lang =- breaksDesc (breakFunc (locale lang LBAuto)) txt--runLineBreaks :: WithSpan Run -> [(Int, BreakStatus.Line)]-runLineBreaks (WithSpan rs run) =- runBreaksFromSpan run $ RS.spanLineBreaks rs+ sls = map SpanLayout fragsBySpan+ fragsBySpan = take numSpans $ splitBySpanIndex frags+ frags = R.paragraphFragments pl -runCharacterBreaks :: WithSpan Run -> [(Int, ())]-runCharacterBreaks (WithSpan rs run) =- runBreaksFromSpan run $ RS.spanCharacterBreaks rs+splitBySpanIndex :: [Fragment (Int, d)] -> [[Fragment d]]+splitBySpanIndex frags = [getBySpanIndex i frags | i <- [0 ..]] --- | Constrain span breaks to a selected run and adjust offsets.-runBreaksFromSpan :: Run -> [(Int, a)] -> [(Int, a)]-runBreaksFromSpan run spanBreaks =- dropWhile (not . valid) $ subOffsetsDesc (runOffsetInSpan run) spanBreaks- where- valid (off, _) = off < runLength- runLength = lengthWord8 $ getText run+getBySpanIndex :: Int -> [Fragment (Int, d)] -> [Fragment d]+getBySpanIndex idx = map stripSpanIndex . filter ((== idx) . getSpanIndex) --- | Predicate for characters that can be potentially removed from the--- beginning of a line according to the CSS Text Module.-isStartSpace :: Char -> Bool-isStartSpace c = c `elem` [' ', '\t']+getSpanIndex :: Fragment (Int, d) -> Int+getSpanIndex Fragment { fragmentUserData = (i, _) } = i --- | Predicate for characters that can be potentially removed from the end of--- a line according to the CSS Text Module.-isEndSpace :: Char -> Bool-isEndSpace c = c `elem` [' ', '\t', '\x1680']+stripSpanIndex :: Fragment (Int, d) -> Fragment d+stripSpanIndex f = f+ { fragmentUserData = snd (fragmentUserData f)+ , fragmentAncestorBoxes = map stripSpanIndexInBox (fragmentAncestorBoxes f)+ } --- | Predicate for characters that should be removed from the end of a line in--- the case of a hard line break.-isNewline :: Char -> Bool-isNewline c = c == '\n'+stripSpanIndexInBox :: AncestorBox (Int, d) -> AncestorBox d+stripSpanIndexInBox ab = ab { boxUserData = snd (boxUserData ab) }
src/Data/Text/ParagraphLayout/Internal/Plain/Paragraph.hs view
@@ -27,7 +27,7 @@ -- -- For simple use cases, it may be sufficient to construct paragraphs using -- [ParagraphConstruction]("Data.Text.ParagraphLayout.ParagraphConstruction").-data Paragraph = Paragraph+data Paragraph d = Paragraph Array -- ^ A byte array containing the whole text to be laid out, in UTF-8.@@ -44,7 +44,7 @@ -- Any characters preceding this offset will not be shaped, but may still -- be used to influence the shape of neighbouring characters. - [Span]+ [Span d] -- ^ Parts of the text to be laid out, in logical order. -- The initial offset plus total length of all spans must not exceed -- the bounds of the byte array.@@ -60,7 +60,7 @@ -- -- You can use this function to verify that Balkón will slice the input text -- correctly.-paragraphSpanBounds :: Paragraph -> NonEmpty Int+paragraphSpanBounds :: Paragraph d -> NonEmpty Int paragraphSpanBounds (Paragraph _ initialOffset spans _) = -- TODO: Consider adding checks for array bounds. NonEmpty.scanl (+) initialOffset (map spanLength spans)@@ -69,7 +69,7 @@ -- -- You can use this function to verify that Balkón will slice the input text -- correctly.-paragraphSpanTexts :: Paragraph -> [Text]+paragraphSpanTexts :: Paragraph d -> [Text] paragraphSpanTexts p@(Paragraph arr _ _ _) = zipWith toText sStarts sEnds where toText start end = Text arr start (end - start)@@ -81,7 +81,7 @@ -- -- You can use this function to verify that Balkón will slice the input text -- correctly.-paragraphText :: Paragraph -> Text+paragraphText :: Paragraph d -> Text paragraphText p@(Paragraph arr _ _ _) = Text arr start (end - start) where start = NonEmpty.head sBounds
src/Data/Text/ParagraphLayout/Internal/Plain/ParagraphLayout.hs view
@@ -6,8 +6,6 @@ , mapFragments , paragraphFragments , paragraphLayout- , paragraphOriginX- , paragraphOriginY , shapedRuns ) where@@ -15,49 +13,39 @@ import Data.Int (Int32) import Data.Text.ParagraphLayout.Internal.Fragment+import Data.Text.ParagraphLayout.Internal.LinePagination+import Data.Text.ParagraphLayout.Internal.ParagraphExtents import Data.Text.ParagraphLayout.Internal.Rect import Data.Text.ParagraphLayout.Internal.Span -- | The resulting layout of the whole paragraph.-data ParagraphLayout = ParagraphLayout+data ParagraphLayout d = ParagraphLayout { paragraphRect :: Rect Int32 -- ^ The containing block (CSS3).- , spanLayouts :: [SpanLayout]+ , spanLayouts :: [SpanLayout d] } deriving (Eq, Read, Show) -paragraphOriginX :: (Num a) => a-paragraphOriginX = 0--paragraphOriginY :: (Num a) => a-paragraphOriginY = 0--empty :: (Num a) => Rect a-empty = Rect- { x_origin = paragraphOriginX- , y_origin = paragraphOriginY- , x_size = 0- , y_size = 0- }--containRects :: (Ord a, Num a) => [Rect a] -> Rect a-containRects = foldr union empty+instance Line (ParagraphLayout d) where+ lineHeight pl = height $ paragraphRect pl -- | Wrap the given `SpanLayout`s and compute their containing rectangle.-paragraphLayout :: [SpanLayout] -> ParagraphLayout+paragraphLayout :: [SpanLayout d] -> ParagraphLayout d paragraphLayout sls = ParagraphLayout pRect sls where pRect = containRects $ concat $ map spanRects sls -- | A `ParagraphLayout` with an infinite number of empty spans. -- Useful as an identity element for `appendFragments`.-emptyParagraphLayout :: ParagraphLayout-emptyParagraphLayout = ParagraphLayout empty $ repeat (SpanLayout [])+emptyParagraphLayout :: ParagraphLayout d+emptyParagraphLayout = ParagraphLayout emptyRect $ repeat (SpanLayout []) -- | Remove fragments that do not match the given predicate. -- -- The containing rectangle will be recalculated.-filterFragments :: (Fragment -> Bool) -> ParagraphLayout -> ParagraphLayout-filterFragments fragPred (ParagraphLayout _ sls) = paragraphLayout sls'+filterFragments :: (Fragment d -> Bool) -> ParagraphLayout d ->+ ParagraphLayout d+filterFragments fragPred (ParagraphLayout _ sls) =+ paragraphLayout sls' where sls' = map slMapFunc sls slMapFunc (SpanLayout frags) = SpanLayout (filter fragPred frags)@@ -65,8 +53,10 @@ -- | Run a mapping function over each fragment inside a `ParagraphLayout`. -- -- The containing rectangle will be recalculated.-mapFragments :: (Fragment -> Fragment) -> ParagraphLayout -> ParagraphLayout-mapFragments fragMapFunc (ParagraphLayout _ sls) = paragraphLayout sls'+mapFragments :: (Fragment d -> Fragment d) -> ParagraphLayout d ->+ ParagraphLayout d+mapFragments fragMapFunc (ParagraphLayout _ sls) =+ paragraphLayout sls' where sls' = map slMapFunc sls slMapFunc (SpanLayout frags) = SpanLayout (map fragMapFunc frags)@@ -74,7 +64,7 @@ -- | Combine fragments from two `ParagraphLayout`s. -- -- The containing rectangle will be recalculated.-appendFragments :: ParagraphLayout -> ParagraphLayout -> ParagraphLayout+appendFragments :: ParagraphLayout d -> ParagraphLayout d -> ParagraphLayout d appendFragments pla plb = paragraphLayout sls' where sls' = zipWith zipFunc slsa slsb@@ -84,9 +74,9 @@ -- | Return all fragments of shaped text in one flat list, -- discarding information about their associated spans.-paragraphFragments :: ParagraphLayout -> [Fragment]+paragraphFragments :: ParagraphLayout d -> [Fragment d] paragraphFragments pl = concat $ map spanFragments $ spanLayouts pl -- | Return all shaped runs in the paragraph.-shapedRuns :: ParagraphLayout -> [ShapedRun]+shapedRuns :: ParagraphLayout d -> [ShapedRun] shapedRuns pl = map shapedRun $ paragraphFragments pl
+ src/Data/Text/ParagraphLayout/Internal/ProtoLine.hs view
@@ -0,0 +1,76 @@+module Data.Text.ParagraphLayout.Internal.ProtoLine+ ( ProtoLine (..)+ , nonEmpty+ , width+ , applyBoxes+ )+where++import Data.Int (Int32)+import Data.List.NonEmpty (NonEmpty ((:|)))++import qualified Data.Text.ParagraphLayout.Internal.ApplyBoxes as Algo+import Data.Text.ParagraphLayout.Internal.ProtoFragment+import Data.Text.ParagraphLayout.Internal.ResolvedBox+import Data.Text.ParagraphLayout.Internal.WithSpan++-- | Contents of a line that have not been visually ordered or positioned yet.+data ProtoLine f d = ProtoLine++ { protoFragments :: f (WithSpan d ProtoFragment)+ -- ^ Fragments on the line, in logical order.+ -- Intended to be either a regular list or a non-empty list.++ , prevOpenBoxes :: [ResolvedBox d]+ -- ^ Boxes whose starts are located on preceding lines.+ -- The spacing for their start edge will not count towards this line.++ , nextOpenBoxes :: [ResolvedBox d]+ -- ^ Boxes whose ends are located on following lines.+ -- The spacing for their end edge will not count towards this line.++ }++-- | Covert a line with a regular list of fragments into `Just` a line with+-- a non-empty list of fragments, or `Nothing` if there are no fragments.+nonEmpty :: ProtoLine [] d -> Maybe (ProtoLine NonEmpty d)+nonEmpty (ProtoLine [] _ _) = Nothing+nonEmpty pl@(ProtoLine { protoFragments = (f : fs) }) =+ Just pl { protoFragments = f :| fs }++-- | Total width of the line (content and spacing).+width :: (Foldable f, Functor f) => ProtoLine f d -> Int32+width pl = totalAdvances pl + totalBoxesStart pl + totalBoxesEnd pl++-- | Determine which horizontal fragments are the leftmost and which are the+-- rightmost within their ancestor inline boxes.+--+-- The input must be ordered from left to right.+applyBoxes :: ProtoLine NonEmpty d ->+ NonEmpty (Algo.WithBoxes d (WithSpan d ProtoFragment))+applyBoxes pl = Algo.applyBoxes prevOpen nextOpen pfs+ where+ prevOpen = prevOpenBoxes pl+ nextOpen = nextOpenBoxes pl+ pfs = protoFragments pl++-- | Total glyph advances on the line.+totalAdvances :: (Foldable f, Functor f) => ProtoLine f d -> Int32+totalAdvances pl = sum $ fmap getAdvance $ protoFragments pl+ where getAdvance (WithSpan _ pf) = advance pf++-- | Total spacing for boxes starting on the line.+totalBoxesStart :: (Foldable f, Functor f) => ProtoLine f d -> Int32+totalBoxesStart pl = sum $ fmap boxStartSpacing $ boxesStart pl++-- | Total spacing for boxes ending on the line.+totalBoxesEnd :: (Foldable f, Functor f) => ProtoLine f d -> Int32+totalBoxesEnd pl = sum $ fmap boxEndSpacing $ boxesEnd pl++-- | Boxes that start on the given line.+boxesStart :: (Foldable f, Functor f) => ProtoLine f d -> [ResolvedBox d]+boxesStart pl = allBoxes (protoFragments pl) `diff` prevOpenBoxes pl++-- | Boxes that end on the given line.+boxesEnd :: (Foldable f, Functor f) => ProtoLine f d -> [ResolvedBox d]+boxesEnd pl = allBoxes (protoFragments pl) `diff` nextOpenBoxes pl
+ src/Data/Text/ParagraphLayout/Internal/ResolvedBox.hs view
@@ -0,0 +1,72 @@+module Data.Text.ParagraphLayout.Internal.ResolvedBox+ ( ResolvedBox (..)+ , boxEndSpacing+ , boxLeftSpacing+ , boxRightSpacing+ , boxStartSpacing+ , diff+ , union+ )+where++import Data.Int (Int32)+import Data.Text.Glyphize (Direction (DirLTR, DirRTL))++import Data.Text.ParagraphLayout.Internal.BoxOptions++-- | Internal structure describing an inline box.+-- May be shared by multiple fragments.+data ResolvedBox d = ResolvedBox+ { boxUserData :: d+ , boxIndex :: Int+ , boxOptions :: BoxOptions+ , boxDirection :: Direction+ }++instance Eq (ResolvedBox d) where+ a == b = boxIndex a == boxIndex b++instance Ord (ResolvedBox d) where+ a `compare` b = boxIndex a `compare` boxIndex b++-- | Calculate the union of two lists of boxes that are ordered+-- from highest index to lowest and do not contain duplicates.+union :: Ord a => [a] -> [a] -> [a]+union xs [] = xs+union [] ys = ys+union (x : xs) (y : ys) = case x `compare` y of+ EQ -> x : union xs ys+ GT -> x : union xs (y : ys)+ LT -> y : union (x : xs) ys++-- | Calculate the difference of two lists of boxes that are ordered+-- from highest index to lowest and do not contain duplicates.+diff :: Ord a => [a] -> [a] -> [a]+diff xs [] = xs+diff [] _ = []+diff (x : xs) (y : ys) = case x `compare` y of+ EQ -> diff xs ys+ GT -> x : diff xs (y : ys)+ LT -> diff (x : xs) ys++boxLeftSpacing :: ResolvedBox d -> Int32+boxLeftSpacing rb = case boxSpacing $ boxOptions rb of+ BoxSpacingLeftRight s _ -> s++boxRightSpacing :: ResolvedBox d -> Int32+boxRightSpacing rb = case boxSpacing $ boxOptions rb of+ BoxSpacingLeftRight _ s -> s++-- | Spacing at the start of the given box.+boxStartSpacing :: ResolvedBox d -> Int32+boxStartSpacing rb = case (boxDirection rb, boxSpacing $ boxOptions rb) of+ (DirLTR, BoxSpacingLeftRight s _) -> s+ (DirRTL, BoxSpacingLeftRight _ s) -> s+ (_, _) -> 0++-- | Spacing at the end of the given box.+boxEndSpacing :: ResolvedBox d -> Int32+boxEndSpacing rb = case (boxDirection rb, boxSpacing $ boxOptions rb) of+ (DirLTR, BoxSpacingLeftRight _ s) -> s+ (DirRTL, BoxSpacingLeftRight s _) -> s+ (_, _) -> 0
src/Data/Text/ParagraphLayout/Internal/ResolvedSpan.hs view
@@ -1,62 +1,29 @@-module Data.Text.ParagraphLayout.Internal.ResolvedSpan- ( ResolvedSpan (..)- , WithSpan (WithSpan)- , splitBySpanIndex- )+module Data.Text.ParagraphLayout.Internal.ResolvedSpan (ResolvedSpan (..)) where import Data.Text (Text)-import Data.Text.Glyphize (Font) import qualified Data.Text.ICU as BreakStatus (Line) -import Data.Text.ParagraphLayout.Internal.BiDiReorder-import Data.Text.ParagraphLayout.Internal.LineHeight+import Data.Text.ParagraphLayout.Internal.ResolvedBox import Data.Text.ParagraphLayout.Internal.TextContainer+import Data.Text.ParagraphLayout.Internal.TextOptions -- | Internal structure containing resolved values that may be shared with -- other spans across the paragraph.-data ResolvedSpan = ResolvedSpan- { spanIndex :: Int+data ResolvedSpan d = ResolvedSpan+ { spanUserData :: d+ , spanIndex :: Int , spanOffsetInParagraph :: Int , spanText :: Text- , spanFont :: Font- , spanLineHeight :: LineHeight- , spanLanguage :: String+ , spanTextOptions :: TextOptions+ , spanBoxes :: [ResolvedBox d] , spanLineBreaks :: [(Int, BreakStatus.Line)] -- TODO: Can be optimised by starting with the shortest line break. , spanCharacterBreaks :: [(Int, ())] }- deriving (Show) -instance Eq ResolvedSpan where+instance Eq (ResolvedSpan d) where a == b = spanIndex a == spanIndex b -instance TextContainer ResolvedSpan where+instance TextContainer (ResolvedSpan d) where getText = spanText---- | Wrapper for temporarily mapping the relationship to a `ResolvedSpan`.-data WithSpan a = WithSpan ResolvedSpan a--instance Functor WithSpan where- fmap f (WithSpan s a) = WithSpan s (f a)--instance TextContainer a => TextContainer (WithSpan a) where- getText (WithSpan _ c) = getText c--instance SeparableTextContainer a => SeparableTextContainer (WithSpan a) where- splitTextAt8 n (WithSpan rs c) = (WithSpan rs c1, WithSpan rs c2)- where (c1, c2) = splitTextAt8 n c- dropWhileStart p (WithSpan rs c) = WithSpan rs (dropWhileStart p c)- dropWhileEnd p (WithSpan rs c) = WithSpan rs (dropWhileEnd p c)--instance WithLevel a => WithLevel (WithSpan a) where- level (WithSpan _ x) = level x--splitBySpanIndex :: [WithSpan a] -> [[a]]-splitBySpanIndex xs = [getBySpanIndex i xs | i <- [0 ..]]--getBySpanIndex :: Int -> [WithSpan a] -> [a]-getBySpanIndex idx xs = map contents $ filter matchingIndex $ xs- where- matchingIndex (WithSpan rs _) = (spanIndex rs) == idx- contents (WithSpan _ x) = x
+ src/Data/Text/ParagraphLayout/Internal/Rich.hs view
@@ -0,0 +1,76 @@+module Data.Text.ParagraphLayout.Internal.Rich (layoutRich)+where++import Control.Applicative (ZipList (ZipList), getZipList)+import Data.List.NonEmpty (nonEmpty)+import qualified Data.List.NonEmpty as NonEmpty+import Data.Text (Text)+import Data.Text.ICU (Breaker, LocaleName, breakCharacter, breakLine)++import Data.Text.ParagraphLayout.Internal.Break+import Data.Text.ParagraphLayout.Internal.Fragment+import Data.Text.ParagraphLayout.Internal.Layout+import Data.Text.ParagraphLayout.Internal.ParagraphOptions+import qualified Data.Text.ParagraphLayout.Internal.ResolvedSpan as RS+import Data.Text.ParagraphLayout.Internal.Rich.Paragraph+import Data.Text.ParagraphLayout.Internal.Rich.ParagraphLayout+import Data.Text.ParagraphLayout.Internal.Run+import Data.Text.ParagraphLayout.Internal.TextOptions+import Data.Text.ParagraphLayout.Internal.Tree+import Data.Text.ParagraphLayout.Internal.WithSpan++-- | Lay out a rich text paragraph.+layoutRich :: Paragraph d -> ParagraphLayout d+layoutRich p@(Paragraph _ _ _ opts) = paragraphLayout $ map unwrap frags+ where+ unwrap (WithSpan rs frag) =+ frag { fragmentUserData = RS.spanUserData rs }+ frags = case nonEmpty wrappedRuns of+ Just xs -> layoutAndAlignLines maxWidth xs+ Nothing -> []+ wrappedRuns = spansToRunsWrapped spans+ maxWidth = paragraphMaxWidth opts+ spans = resolveSpans p++-- | Split a number of spans into a flat array of runs and add a wrapper+-- so that each run can be traced back to its originating span.+spansToRunsWrapped :: [RS.ResolvedSpan d] -> [WithSpan d Run]+spansToRunsWrapped ss = concat $ map spanToRunsWrapped ss++-- | Split a span into runs and add a wrapper+-- so that each run can be traced back to its originating span.+spanToRunsWrapped :: RS.ResolvedSpan d -> [WithSpan d Run]+spanToRunsWrapped s = map (WithSpan s) (spanToRuns s)++resolveSpans :: Paragraph d -> [RS.ResolvedSpan d]+resolveSpans p@(Paragraph _ pStart root _) = do+ let leaves = flatten root+ let sTexts = paragraphSpanTexts p+ let sBounds = paragraphSpanBounds p+ let sStarts = NonEmpty.init sBounds+ let pText = paragraphText p++ (i, leaf, sStart, sText) <- getZipList $ (,,,)+ <$> ZipList [0 ..]+ <*> ZipList leaves+ <*> ZipList sStarts+ <*> ZipList sTexts+ let (TextLeaf userData _ textOpts boxes) = leaf+ let lang = textLanguage textOpts+ let lBreaks = paragraphBreaks breakLine pText lang+ let cBreaks = paragraphBreaks breakCharacter pText lang+ return RS.ResolvedSpan+ { RS.spanUserData = userData+ , RS.spanIndex = i+ , RS.spanOffsetInParagraph = sStart - pStart+ -- TODO: Consider adding checks for array bounds.+ , RS.spanText = sText+ , RS.spanTextOptions = textOpts+ , RS.spanBoxes = boxes+ , RS.spanLineBreaks = subOffsetsDesc (sStart - pStart) lBreaks+ , RS.spanCharacterBreaks = subOffsetsDesc (sStart - pStart) cBreaks+ }++paragraphBreaks :: (LocaleName -> Breaker a) -> Text -> String -> [(Int, a)]+paragraphBreaks breakFunc txt lang =+ breaksDesc (breakFunc (locale lang LBAuto)) txt
+ src/Data/Text/ParagraphLayout/Internal/Rich/Paragraph.hs view
@@ -0,0 +1,112 @@+module Data.Text.ParagraphLayout.Internal.Rich.Paragraph+ ( Paragraph (..)+ , constructParagraph+ , paragraphSpanBounds+ , paragraphSpanTexts+ , paragraphText+ )+where++import Data.List.NonEmpty (NonEmpty)+import qualified Data.List.NonEmpty as NonEmpty+import Data.Text.Array (Array)+import Data.Text.Internal (Text (Text))++import Data.Text.ParagraphLayout.Internal.ParagraphOptions+import Data.Text.ParagraphLayout.Internal.Tree++-- | Text to be laid out as a single paragraph.+--+-- May be divided into a hierarchy of boxes and spans.+--+-- The input text must be encoded as UTF-8 in a contiguous byte array.+--+-- You may need to use "Data.Text.Internal" in order to determine the byte+-- array and the necessary offsets to construct the paragraph without copying+-- data.+--+-- Alternatively, you can use `constructParagraph` with piecewise text.+data Paragraph d = Paragraph++ Array+ -- ^ A byte array containing the whole text to be laid out, in UTF-8.+ --+ -- This array will be passed to "Data.Text.Glyphize", which passes it to+ -- [@hb_buffer_add_utf8()@]+ -- (https://harfbuzz.github.io/harfbuzz-hb-buffer.html#hb-buffer-add-utf8).+ --+ -- In the output, `Data.Text.Glyphize.cluster` will be a byte offset of+ -- the corresponding input character from this array.++ Int+ -- ^ Byte offset of the first text node from the start of the byte array.+ -- Any characters preceding this offset will not be shaped, but may still+ -- be used to influence the shape of neighbouring characters.++ (RootNode Int d)+ -- ^ Parts of the text to be laid out, represented as a tree.+ -- The in-order walk of this tree corresponds to the logical order+ -- of the text.++ ParagraphOptions+ -- ^ Options applying to the paragraph as a whole.++-- | Construct a `Paragraph` from a tree containing individual pieces of text,+-- plus an optional prefix and suffix, all encoded as UTF-8.+--+-- This internally concatenates all input text into one contiguous byte array.+--+-- Alternatively, you can construct a `Paragraph` directly to avoid copying+-- data.+constructParagraph+ :: Text+ -- ^ Optional prefix. Will not be laid out but may affect the output.+ -> RootNode Text d+ -- ^ Parts of the text to be laid out, represented as a tree.+ -> Text+ -- ^ Optional suffix. Will not be laid out but may affect the output.+ -> ParagraphOptions+ -- ^ Options to apply to the paragraph as a whole.+ -> Paragraph d+ -- ^ Constructed paragraph that can be passed to `layoutRich`.+constructParagraph prefix root suffix = Paragraph arr afterPrefix root'+ where+ (Text arr beforePrefix _) = txt+ afterPrefix = beforePrefix + prefixLen+ (txt, prefixLen, root') = glue prefix root suffix++-- | Calculate the offsets into the `Paragraph`'s underlying `Data.Text.Array`+-- where each text node starts and ends, in ascending order. The resulting list+-- will be one larger than the number of text nodes in the input.+--+-- You can use this function to verify that Balkón will slice the input text+-- correctly.+paragraphSpanBounds :: Paragraph d -> NonEmpty Int+paragraphSpanBounds (Paragraph _ initialOffset root _) =+ -- TODO: Consider adding checks for array bounds.+ NonEmpty.scanl (+) initialOffset $ map len $ flatten root+ where+ len (TextLeaf _ l _ _) = l++-- | Turn each text node from the input `Paragraph` into a `Text`.+--+-- You can use this function to verify that Balkón will slice the input text+-- correctly.+paragraphSpanTexts :: Paragraph d -> [Text]+paragraphSpanTexts p@(Paragraph arr _ _ _) = zipWith toText sStarts sEnds+ where+ toText start end = Text arr start (end - start)+ sStarts = NonEmpty.init sBounds+ sEnds = NonEmpty.tail sBounds+ sBounds = paragraphSpanBounds p++-- | Turn all text nodes from the input `Paragraph` into one combined `Text`.+--+-- You can use this function to verify that Balkón will slice the input text+-- correctly.+paragraphText :: Paragraph d -> Text+paragraphText p@(Paragraph arr _ _ _) = Text arr start (end - start)+ where+ start = NonEmpty.head sBounds+ end = NonEmpty.last sBounds+ sBounds = paragraphSpanBounds p
+ src/Data/Text/ParagraphLayout/Internal/Rich/ParagraphLayout.hs view
@@ -0,0 +1,70 @@+module Data.Text.ParagraphLayout.Internal.Rich.ParagraphLayout+ ( ParagraphLayout (..)+ , appendFragments+ , emptyParagraphLayout+ , filterFragments+ , mapFragments+ , paragraphLayout+ , paragraphOriginX+ , paragraphOriginY+ , shapedRuns+ )+where++import Data.Int (Int32)++import Data.Text.ParagraphLayout.Internal.Fragment+import Data.Text.ParagraphLayout.Internal.LinePagination+import Data.Text.ParagraphLayout.Internal.ParagraphExtents+import Data.Text.ParagraphLayout.Internal.Rect++-- | The resulting layout of the whole paragraph.+data ParagraphLayout d = ParagraphLayout+ { paragraphRect :: Rect Int32+ -- ^ The containing block (CSS3).+ , paragraphFragments :: [Fragment d]+ -- ^ The resulting layout of all input text, divided into fragments as+ -- required by the input structure, line breaking, text writing direction,+ -- and changes of script.+ }+ deriving (Eq, Read, Show)++instance Line (ParagraphLayout d) where+ lineHeight pl = height $ paragraphRect pl++-- | Wrap the given `Fragment`s and compute their containing rectangle.+paragraphLayout :: [Fragment d] -> ParagraphLayout d+paragraphLayout frags = ParagraphLayout pRect frags+ where pRect = containRects $ map fragmentSpacedRect frags++-- | A `ParagraphLayout` with no fragments.+-- Useful as an identity element for `appendFragments`.+emptyParagraphLayout :: ParagraphLayout a+emptyParagraphLayout = ParagraphLayout emptyRect []++-- | Remove fragments that do not match the given predicate.+--+-- The containing rectangle will be recalculated.+filterFragments :: (Fragment d -> Bool) -> ParagraphLayout d ->+ ParagraphLayout d+filterFragments predicate (ParagraphLayout _ frags) =+ paragraphLayout $ filter predicate frags++-- | Run a mapping function over each fragment inside a `ParagraphLayout`.+--+-- The containing rectangle will be recalculated.+mapFragments :: (Fragment d -> Fragment d) -> ParagraphLayout d ->+ ParagraphLayout d+mapFragments mapFunc (ParagraphLayout _ frags) =+ paragraphLayout $ map mapFunc frags++-- | Combine fragments from two `ParagraphLayout`s.+--+-- The containing rectangle will be recalculated.+appendFragments :: ParagraphLayout d -> ParagraphLayout d -> ParagraphLayout d+appendFragments (ParagraphLayout _ a) (ParagraphLayout _ b) =+ paragraphLayout $ a ++ b++-- | Return all shaped runs in the paragraph.+shapedRuns :: ParagraphLayout d -> [ShapedRun]+shapedRuns pl = map shapedRun $ paragraphFragments pl
src/Data/Text/ParagraphLayout/Internal/Run.hs view
@@ -74,7 +74,7 @@ data Merged a = Incompatible | Merged a -spanToRuns :: ResolvedSpan -> [Run]+spanToRuns :: ResolvedSpan d -> [Run] spanToRuns s = snd $ mapAccumL run 0 $ protoRuns zipper where zipper = start $ spanText s
src/Data/Text/ParagraphLayout/Internal/Span.hs view
@@ -2,6 +2,7 @@ ( Span (..) , SpanLayout (..) , SpanOptions (..)+ , defaultSpanOptions , spanFragments , spanRects )@@ -16,18 +17,25 @@ -- -- Each span could have a different font family, size, style, text decoration, -- colour, language, etc.-data Span = Span+data Span d = Span - { spanLength :: Int+ { spanUserData :: d+ -- ^ User-defined data associated with the span.++ , spanLength :: Int -- ^ Byte offset to the next span or the end of the paragraph text. , spanOptions :: SpanOptions -- ^ Options applying to this specific span. }- deriving (Eq, Read, Show)+ deriving (Eq) -- | Defines options relevant to the layout of a single span of text.+--+-- This record type is likely to be extended in the future.+-- Use `defaultSpanOptions` and update it with specific record selectors+-- instead of constructing `SpanOptions` directly. data SpanOptions = SpanOptions { spanLanguage :: String@@ -40,17 +48,23 @@ -- TODO: Add all relevant attributes. }- deriving (Eq, Read, Show)+ deriving (Eq) +-- | `SpanOptions` with default values.+defaultSpanOptions :: SpanOptions+defaultSpanOptions = SpanOptions+ { spanLanguage = ""+ }+ -- | The resulting layout of each span, which may include multiple fragments -- as required by line breaking, text writing direction, and changes of script.-data SpanLayout = SpanLayout [Fragment]+data SpanLayout d = SpanLayout [Fragment d] -- TODO: Consider merging fragments created by script changes. deriving (Eq, Read, Show) -- | Return all fragments of shaped text from the given span.-spanFragments :: SpanLayout -> [Fragment]+spanFragments :: SpanLayout d -> [Fragment d] spanFragments (SpanLayout frags) = frags -spanRects :: SpanLayout -> [Rect Int32]+spanRects :: SpanLayout d -> [Rect Int32] spanRects sl = map fragmentRect $ spanFragments sl
src/Data/Text/ParagraphLayout/Internal/TextContainer.hs view
@@ -116,7 +116,7 @@ (Char -> Bool) -> NonEmpty a -> NonEmpty a trimTextsStartPreserve p tcs = case nonEmpty $ trimTextsStart p $ NonEmpty.toList tcs of- Nothing -> NonEmpty.singleton $ truncateText $ NonEmpty.head tcs+ Nothing -> truncateText (NonEmpty.head tcs) :| [] Just out -> out -- | Treat a list of text containers as a contiguous sequence,@@ -137,7 +137,7 @@ (Char -> Bool) -> NonEmpty a -> NonEmpty a trimTextsEndPreserve p tcs = case nonEmpty $ trimTextsEnd p $ NonEmpty.toList tcs of- Nothing -> NonEmpty.singleton $ truncateText $ NonEmpty.head tcs+ Nothing -> truncateText (NonEmpty.head tcs) :| [] Just out -> out trimTextsStart' :: SeparableTextContainer a => (Char -> Bool) -> [a] -> [a]
+ src/Data/Text/ParagraphLayout/Internal/TextOptions.hs view
@@ -0,0 +1,60 @@+module Data.Text.ParagraphLayout.Internal.TextOptions+ ( TextOptions (..)+ , defaultTextOptions+ )+where++import Data.Text.Glyphize (Direction, Font, emptyFont)++import Data.Text.ParagraphLayout.Internal.LineHeight++-- | Style options to be applied to a text sequence.+--+-- This record type is likely to be extended in the future.+-- Use `defaultTextOptions` and update it with specific record selectors+-- instead of constructing `TextOptions` directly.+data TextOptions = TextOptions++ { textFont :: Font+ -- ^ Font to be used for shaping and measurement.+ -- Make sure to set its scale (see `Data.Text.Glyphize.optionScale`) using+ -- the same units that you want in the output.++ , textLineHeight :: LineHeight+ -- ^ Preferred line height of the resulting fragments.++ , textLanguage :: String+ -- ^ IETF BCP 47 language tag, such as the value expected to be found in+ -- the HTML @lang@ attribute, specifying the primary language for the+ -- span's text content. An empty string explicitly means "language unknown".+ --+ -- Used for selecting the appropriate glyphs and line breaking rules,+ -- primarily in East Asian languages.++ , textDirection :: Direction+ -- ^ Base text direction.+ -- Used to determine which box fragment gets the left spacing and which+ -- gets the right spacing when broken over multiple lines.+ --+ -- TODO: Also use for the visual order of boxes.++ -- TODO: textVerticalAlign+ -- TODO: textLetterSpacing+ -- TODO: textWordSpacing+ -- TODO: textFontFeatures+ -- TODO: textSoftBreaks++ }+ deriving (Eq)++-- | `TextOptions` with default values.+defaultTextOptions+ :: Direction+ -- ^ Required value for `textDirection`.+ -> TextOptions+defaultTextOptions dir = TextOptions+ { textFont = emptyFont+ , textLineHeight = Normal+ , textLanguage = ""+ , textDirection = dir+ }
+ src/Data/Text/ParagraphLayout/Internal/Tree.hs view
@@ -0,0 +1,154 @@+-- | Represents the contents of a paragraph as a tree.+--+-- The tree is a hierarchy of boxes, with one box always present as the root.+-- Each box may contain any combination of text sequences and other boxes.+--+-- The type parameter @t@ refers to the way in which text is represented in the+-- tree:+--+-- - `Text` means that each leaf node directly contains its own text.+-- - `Int` means that the text comes from a contiguous byte array, and each+-- leaf node specifies only the number of bytes belonging to its text.+--+-- The `glue` function can be used to convert a `Text` tree into an `Int` tree.+--+-- The type parameter @d@ defines the type of user data to be associated with+-- each non-root node.+module Data.Text.ParagraphLayout.Internal.Tree+ ( RootNode (..)+ , InnerNode (..)+ , Box (..)+ , Leaf (..)+ , flatten+ , glue+ )+where++import Data.Text (Text)+import Data.Text.Foreign (lengthWord8)+import qualified Data.Text.Lazy as Lazy (toStrict)+import qualified Data.Text.Internal.Lazy as Lazy (Text, chunk, empty)++import Data.Text.ParagraphLayout.Internal.BoxOptions+import Data.Text.ParagraphLayout.Internal.ResolvedBox+import Data.Text.ParagraphLayout.Internal.TextOptions++-- | Root of the paragraph tree.+data RootNode t d++ = RootBox+ -- ^ The root inline box. Always present in a paragraph.+ --+ -- Cannot be styled directly, but can still set options for formatting+ -- text sequences directly descending from this box.+ (Box t d)+ -- ^ Contents of the box.++-- | Non-root node of the paragraph tree.+data InnerNode t d++ = InlineBox+ -- ^ An inline box, nested in another box.+ d+ -- ^ User-defined data associated with the box.+ (Box t d)+ -- ^ Contents of the box.+ BoxOptions+ -- ^ Style options to apply to the inline box.++ | TextSequence+ -- ^ A leaf node containing text.+ d+ -- ^ User-defined data associated with the text node.+ t+ -- ^ Representation of the text contained by the text node.++-- | A box with content and a defined format. Corresponds to a DOM element.+data Box t d = Box++ [InnerNode t d]+ -- ^ Text nodes and other boxes contained by this box.++ TextOptions+ -- ^ Style options to apply to text sequences directly contained+ -- by this box.+++type BoxPath d = [ResolvedBox d]++-- | Representation of a leaf node of the tree after flattening.+data Leaf t d = TextLeaf++ d+ -- ^ User-defined data associated with the text node.++ t+ -- ^ Representation of the text contained by the text node.++ TextOptions+ -- ^ Style options to apply to this text sequence.++ (BoxPath d)+ -- ^ Inline boxes found on the path from this text sequence to the root+ -- of the original tree.++-- | Convert the tree to a flat list of its leaf nodes (text sequences).+flatten :: RootNode t d -> [Leaf t d]+flatten (RootBox (Box ns textOpts)) = snd $ flattenNodes 0 [] textOpts ns++flattenNodes :: Int -> BoxPath d -> TextOptions -> [InnerNode t d] ->+ (Int, [Leaf t d])+flattenNodes idx _ _ [] = (idx, [])+flattenNodes idx path textOpts (n : ns) = (idx'', flat1 ++ flat2)+ where+ (idx', flat1) = flattenNode idx path textOpts n+ (idx'', flat2) = flattenNodes idx' path textOpts ns++flattenNode :: Int -> BoxPath d -> TextOptions -> InnerNode t d ->+ (Int, [Leaf t d])+flattenNode idx path textOpts (TextSequence d t) =+ (idx, [TextLeaf d t textOpts path])+flattenNode idx path _ (InlineBox d (Box ns textOpts) boxOpts) =+ flattenNodes (idx + 1) (ResolvedBox d idx boxOpts dir : path) textOpts ns+ where+ dir = textDirection textOpts++-- | Concatenate all pieces of text from a `Text` tree, plus an optional prefix+-- and suffix, into a contiguous `Text` and build an `Int` tree with+-- corresponding byte lengths.+--+-- Using a contiguous `Text` lets HarfBuzz take neighbouring characters into+-- consideration when making shaping decisions, so that for example kerning+-- does not stop working on node boundaries.+glue :: Text -> RootNode Text d -> Text -> (Text, Int, RootNode Int d)+glue prefix root suffix = (txt, initialOffset, root')+ where+ txt = Lazy.toStrict $ Lazy.chunk prefix txtTail+ initialOffset = lengthWord8 prefix+ (txtTail, root') = glueRoot (Lazy.chunk suffix Lazy.empty) root++glueRoot :: Lazy.Text -> RootNode Text d -> (Lazy.Text, RootNode Int d)+glueRoot t (RootBox b) = (t', RootBox b')+ where+ (t', b') = glueBox t b++glueBox :: Lazy.Text -> Box Text d -> (Lazy.Text, Box Int d)+glueBox t (Box nodes opts) = (t', Box nodes' opts)+ where+ (t', nodes') = glueNodes t nodes++glueNodes :: Lazy.Text -> [InnerNode Text d] -> (Lazy.Text, [InnerNode Int d])+glueNodes t [] = (t, [])+glueNodes t (node : nodes) = (t'', node' : nodes')+ where+ (t'', node') = glueNode t' node+ (t', nodes') = glueNodes t nodes++glueNode :: Lazy.Text -> InnerNode Text d -> (Lazy.Text, InnerNode Int d)+glueNode suffix (TextSequence d txt) = (combinedText, node)+ where+ combinedText = Lazy.chunk txt suffix+ node = TextSequence d (lengthWord8 txt)+glueNode suffix (InlineBox d b o) = (combinedText, InlineBox d node o)+ where+ (combinedText, node) = glueBox suffix b
+ src/Data/Text/ParagraphLayout/Internal/WithSpan.hs view
@@ -0,0 +1,34 @@+module Data.Text.ParagraphLayout.Internal.WithSpan+ ( WithSpan (WithSpan)+ , allBoxes+ )+where++import Data.Text.ParagraphLayout.Internal.BiDiReorder+import Data.Text.ParagraphLayout.Internal.ResolvedBox+import Data.Text.ParagraphLayout.Internal.ResolvedSpan+import Data.Text.ParagraphLayout.Internal.TextContainer++-- | Wrapper for temporarily mapping the relationship to a `ResolvedSpan`.+data WithSpan d a = WithSpan (ResolvedSpan d) a++instance Functor (WithSpan d) where+ fmap f (WithSpan s a) = WithSpan s (f a)++instance TextContainer a => TextContainer (WithSpan d a) where+ getText (WithSpan _ c) = getText c++instance SeparableTextContainer a => SeparableTextContainer (WithSpan d a) where+ splitTextAt8 n (WithSpan rs c) = (WithSpan rs c1, WithSpan rs c2)+ where (c1, c2) = splitTextAt8 n c+ dropWhileStart p (WithSpan rs c) = WithSpan rs (dropWhileStart p c)+ dropWhileEnd p (WithSpan rs c) = WithSpan rs (dropWhileEnd p c)++instance WithLevel a => WithLevel (WithSpan d a) where+ level (WithSpan _ x) = level x++boxes :: WithSpan d a -> [ResolvedBox d]+boxes (WithSpan s _) = spanBoxes s++allBoxes :: (Foldable f, Functor f) => f (WithSpan d a) -> [ResolvedBox d]+allBoxes xs = foldr union [] $ fmap boxes xs
test/Data/Text/ParagraphLayout/FontLoader.hs view
@@ -4,21 +4,27 @@ , latinFont , loadFont , writeFontInfo+ , testingOptions+ , testingOptionsSmall+ , demoOptions ) where import Data.ByteString (readFile) import Data.List (concat, (++))+import Data.Maybe (Maybe (Just)) import Data.Text.Glyphize ( Font- , FontOptions+ , FontOptions (optionPPEm, optionScale) , createFace , createFontWithOptions+ , defaultFontOptions , faceIndex , fontFace , fontPPEm , fontScale )+ import Data.Word (Word) import Prelude (return, show, ($)) import System.FilePath (FilePath, (</>))@@ -52,3 +58,28 @@ pixelSize = let (x, y) = fontPPEm font in (show x) ++ "," ++ (show y) scale = let (x, y) = fontScale font in (show x) ++ "," ++ (show y) face = fontFace font++-- | Font options to be used for high precision testing (1000 units per EM).+-- Hinting should behave as if the font size were 24px.+-- TODO: Test hinting.+testingOptions :: FontOptions+testingOptions = defaultFontOptions {+ optionPPEm = Just (24, 24),+ optionScale = Just (1000, 1000)+}++-- | Like `testingOptions` with font size proportionally changed to 18px.+testingOptionsSmall :: FontOptions+testingOptionsSmall = defaultFontOptions {+ optionPPEm = Just (18, 18),+ optionScale = Just (750, 750)+}++-- | Font options to be used to be used for easy visual testing in a demo app+-- (32 units per EM, 1 unit per pixel).+-- This makes 20em equal 640px, which is the width of the demo window.+demoOptions :: FontOptions+demoOptions = defaultFontOptions {+ optionPPEm = Just (32, 32),+ optionScale = Just (32, 32)+}
+ test/Data/Text/ParagraphLayout/Internal/ApplyBoxesSpec.hs view
@@ -0,0 +1,181 @@+module Data.Text.ParagraphLayout.Internal.ApplyBoxesSpec (spec) where++import Data.List.NonEmpty (NonEmpty, fromList, toList)+import Data.Text (empty)+import Data.Text.Glyphize (Direction (DirLTR, DirRTL))++import Test.Hspec+import Data.Text.ParagraphLayout.Internal.ApplyBoxes+import Data.Text.ParagraphLayout.Internal.BoxOptions+import Data.Text.ParagraphLayout.Internal.ResolvedBox+import Data.Text.ParagraphLayout.Internal.ResolvedSpan+import Data.Text.ParagraphLayout.Internal.TextOptions+import Data.Text.ParagraphLayout.Internal.WithSpan++trivialBox :: d -> Int -> Direction -> ResolvedBox d+trivialBox d i dir = ResolvedBox d i defaultBoxOptions dir++trivialSpan :: d -> Int -> Direction -> [ResolvedBox d] -> ResolvedSpan d+trivialSpan d i dir bs = ResolvedSpan+ { spanUserData = d+ , spanIndex = i+ , spanOffsetInParagraph = 0+ , spanText = empty+ , spanTextOptions = defaultTextOptions dir+ , spanBoxes = bs+ , spanLineBreaks = []+ , spanCharacterBreaks = []+ }++-- | Wrap nothing with the given span, since the algorithm expects `WithSpan`.+wrapNothing :: ResolvedSpan d -> WithSpan d ()+wrapNothing rs = WithSpan rs ()++buildFrags :: [ResolvedSpan d] -> NonEmpty (WithSpan d ())+buildFrags spans = fmap wrapNothing $ fromList spans++-- | Record for easy comparison of test output.+data OutputFragment = OutputFragment+ { spanData :: String+ , leftBoxesData :: [String]+ , rightBoxesData :: [String]+ }+ deriving (Show, Eq)++toOutput :: WithBoxes String (WithSpan String ()) -> OutputFragment+toOutput a = OutputFragment+ { spanData = case unwrap a of+ WithSpan rs _ -> spanUserData rs+ , leftBoxesData = map boxUserData $ leftInBoxes a+ , rightBoxesData = map boxUserData $ rightInBoxes a+ }++runTest+ :: [ResolvedBox String]+ -> [ResolvedSpan String]+ -> [ResolvedBox String]+ -> [OutputFragment]+runTest prevOpen spans nextOpen =+ map toOutput $ toList $ applyBoxes prevOpen nextOpen (buildFrags spans)++spec :: Spec+spec = do++ describe "applyBoxes" $ do++ it "handles case without boxes" $ do+ let+ spans =+ [ trivialSpan "A" 0 DirLTR []+ , trivialSpan "B" 1 DirLTR []+ ]++ runTest [] spans [] `shouldBe`+ [ OutputFragment "A" [] []+ , OutputFragment "B" [] []+ ]++ it "handles discrete boxes" $ do+ let+ box1 = trivialBox "box1" 0 DirRTL+ box2 = trivialBox "box2" 1 DirRTL+ spans =+ [ trivialSpan "Z" 0 DirRTL [box2]+ , trivialSpan "Y" 1 DirRTL [box1]+ , trivialSpan "X" 2 DirRTL [box1]+ , trivialSpan "W" 3 DirRTL []+ ]++ runTest [] spans [] `shouldBe`+ [ OutputFragment "Z" ["box2"] ["box2"]+ , OutputFragment "Y" ["box1"] []+ , OutputFragment "X" [] ["box1"]+ , OutputFragment "W" [] []+ ]++ it "handles deeply nested boxes" $ do+ let+ box1 = trivialBox "box1" 0 DirLTR+ box2 = trivialBox "box2" 1 DirRTL+ box3 = trivialBox "box3" 2 DirRTL+ box4 = trivialBox "box4" 3 DirLTR+ box5 = trivialBox "box5" 4 DirRTL+ spans =+ [ trivialSpan "A" 0 DirRTL [box3, box2, box1]+ , trivialSpan "B" 1 DirRTL [box5, box4, box3, box2, box1]+ ]++ runTest [] spans [] `shouldBe`+ [ OutputFragment "A"+ ["box3", "box2", "box1"]+ []+ , OutputFragment "B"+ ["box5", "box4"]+ ["box5", "box4", "box3", "box2", "box1"]+ ]++ it "omits left edge of LTR box crossing previous line" $ do+ let+ box = trivialBox "box" 0 DirLTR+ spans = [trivialSpan "." 0 DirLTR [box]]++ runTest [box] spans [] `shouldBe` [OutputFragment "." [] ["box"]]++ it "omits right edge of RTL box crossing previous line" $ do+ let+ box = trivialBox "box" 0 DirRTL+ spans = [trivialSpan "." 0 DirRTL [box]]++ runTest [box] spans [] `shouldBe` [OutputFragment "." ["box"] []]++ it "omits right edge of LTR box crossing next line" $ do+ let+ box = trivialBox "box" 0 DirLTR+ spans = [trivialSpan "." 0 DirLTR [box]]++ runTest [] spans [box] `shouldBe` [OutputFragment "." ["box"] []]++ it "omits left edge of RTL box crossing next line" $ do+ let+ box = trivialBox "box" 0 DirRTL+ spans = [trivialSpan "." 0 DirRTL [box]]++ runTest [] spans [box] `shouldBe` [OutputFragment "." [] ["box"]]++ it "omits both edges of LTR box crossing previous and next line" $ do+ let+ box = trivialBox "box" 0 DirLTR+ spans = [trivialSpan "." 0 DirLTR [box]]++ runTest [box] spans [box] `shouldBe` [OutputFragment "." [] []]++ it "omits both edges of RTL box crossing previous and next line" $ do+ let+ box = trivialBox "box" 0 DirRTL+ spans = [trivialSpan "." 0 DirRTL [box]]++ runTest [box] spans [box] `shouldBe` [OutputFragment "." [] []]++ it "handles complex example" $ do+ let+ box1 = trivialBox "box1" 0 DirRTL+ box2 = trivialBox "box2" 1 DirLTR+ box3 = trivialBox "box3" 2 DirLTR+ box4 = trivialBox "box4" 3 DirRTL+ spans =+ [ trivialSpan "A" 0 DirRTL [box1]+ , trivialSpan "B" 1 DirLTR [box2, box1]+ , trivialSpan "C" 2 DirLTR [box2, box1]+ , trivialSpan "D" 3 DirRTL [box3, box2, box1]+ , trivialSpan "E" 4 DirLTR [box2, box1]+ , trivialSpan "F" 5 DirRTL [box4, box1]+ ]++ runTest [box1] spans [box4, box1] `shouldBe`+ [ OutputFragment "A" [] []+ , OutputFragment "B" ["box2"] []+ , OutputFragment "C" [] []+ , OutputFragment "D" ["box3"] ["box3"]+ , OutputFragment "E" [] ["box2"]+ , OutputFragment "F" [] ["box4"]+ ]
+ test/Data/Text/ParagraphLayout/Internal/TreeSpec.hs view
@@ -0,0 +1,158 @@+module Data.Text.ParagraphLayout.Internal.TreeSpec (spec) where++import Test.Hspec+import Data.Text.ParagraphLayout.Internal.BoxOptions+import Data.Text.ParagraphLayout.Internal.ResolvedBox+import Data.Text.ParagraphLayout.Internal.TextOptions+import Data.Text.ParagraphLayout.Internal.Tree++t :: TextOptions+t = defaultTextOptions undefined++complexTree :: RootNode Int String+complexTree = RootBox $ Box+ [ TextSequence "a" 1+ , InlineBox+ "box1"+ (Box+ [ TextSequence "b" 1+ , TextSequence "c" 1+ , InlineBox+ "box2"+ (Box+ [ TextSequence "d" 1+ , TextSequence "e" 1+ ]+ t+ )+ defaultBoxOptions+ , TextSequence "f" 1+ , InlineBox+ "box3"+ (Box+ [ TextSequence "g" 1+ , InlineBox+ "box4"+ (Box+ [ TextSequence "h" 1+ ]+ t+ )+ defaultBoxOptions+ , TextSequence "i" 1+ ]+ t+ )+ defaultBoxOptions+ ]+ t+ )+ defaultBoxOptions+ , InlineBox+ "box5"+ (Box+ [ InlineBox+ "box6"+ (Box+ [ TextSequence "j" 1+ , TextSequence "k" 1+ ]+ t+ )+ defaultBoxOptions+ , InlineBox+ "box7"+ (Box+ [ InlineBox+ "box8"+ (Box+ [ TextSequence "l" 1+ ]+ t+ )+ defaultBoxOptions+ ]+ t+ )+ defaultBoxOptions+ , TextSequence "m" 1+ ]+ t+ )+ defaultBoxOptions+ ]+ t++leafData :: Leaf t d -> d+leafData (TextLeaf d _ _ _) = d++leafPath :: Leaf t d -> [ResolvedBox d]+leafPath (TextLeaf _ _ _ path) = path++leafDepth :: Leaf t d -> Int+leafDepth = length . leafPath++leafPathData :: Leaf t d -> [d]+leafPathData = map boxUserData . leafPath++leafPathIndexes :: Leaf t d -> [Int]+leafPathIndexes = map boxIndex . leafPath++spec :: Spec+spec = do++ describe "flatten" $ do+ let leaves = flatten complexTree++ it "should have one leaf per text sequence" $+ length leaves `shouldBe` 13++ it "leaves should have expected data" $ do+ map leafData leaves `shouldBe`+ map (: []) ['a' .. 'm']++ it "leaves should have expected depths" $ do+ map leafDepth leaves `shouldBe`+ [0, 1, 1, 2, 2, 1, 2, 3, 2, 2, 2, 3, 1]++ it "leaves should have expected ancestor data" $ do+ map leafPathData leaves `shouldBe`+ [ []+ , ["box1"]+ , ["box1"]+ , ["box2", "box1"]+ , ["box2", "box1"]+ , ["box1"]+ , ["box3", "box1"]+ , ["box4", "box3", "box1"]+ , ["box3", "box1"]+ , ["box6", "box5"]+ , ["box6", "box5"]+ , ["box8", "box7", "box5"]+ , ["box5"]+ ]++ it "leaves should have expected ancestor indexes" $ do+ map leafPathIndexes leaves `shouldBe`+ [ []+ , [0]+ , [0]+ , [1, 0]+ , [1, 0]+ , [0]+ , [2, 0]+ , [3, 2, 0]+ , [2, 0]+ , [5, 4]+ , [5, 4]+ , [7, 6, 4]+ , [4]+ ]++ it "leaves 'c' and 'f' should have the same parent" $+ leafPath (leaves !! 2) !! 0 ==+ leafPath (leaves !! 5) !! 0 `shouldBe` True++ it "leaves 'e' and 'i' should have a different parent" $+ leafPath (leaves !! 4) !! 0 ==+ leafPath (leaves !! 8) !! 0 `shouldBe` False
− test/Data/Text/ParagraphLayout/ParagraphData.hs
@@ -1,114 +0,0 @@-module Data.Text.ParagraphLayout.ParagraphData- ( arabicFillerParagraph- , czechHelloParagraph- , devanagariAccentParagraph- , devanagariParagraph- , devanagariPrefixedAccentParagraph- , emptyParagraph- , emptySpanParagraph- , hardBreaksLTRParagraph- , hardBreaksRTLParagraph- , ligatureParagraph- , loremIpsumParagraph- , manySpacesParagraph- , mixedLanguageLTRParagraph- , mixedScriptSerbianParagraph- , mixedScriptWordsParagraph- , spannedArabicFillerParagraph- , spannedLoremIpsumParagraph- , trivialParagraph- )-where--import Data.Text.ParagraphLayout (Paragraph, ParagraphOptions, SpanOptions (..))-import Data.Text.ParagraphLayout.ParagraphConstruction---- | Span with text in the Czech language.-cs :: String -> (SpanOptions, String)-cs = (,) SpanOptions { spanLanguage = "cs" }---- | Span with text in the English language.-en :: String -> (SpanOptions, String)-en = (,) SpanOptions { spanLanguage = "en" }---- | Span with text in the Japanese language.-ja :: String -> (SpanOptions, String)-ja = (,) SpanOptions { spanLanguage = "ja" }---- | Span with text in the Serbian language.-sr :: String -> (SpanOptions, String)-sr = (,) SpanOptions { spanLanguage = "sr" }---- | Span with text in no language.-zxx :: String -> (SpanOptions, String)-zxx = (,) SpanOptions { spanLanguage = "zxx" }--emptyParagraph :: ParagraphOptions -> Paragraph-emptyParagraph = "x" |<>| "zzzzzzz"--emptySpanParagraph :: ParagraphOptions -> Paragraph-emptySpanParagraph = "xx" |< en "" >| "zzzzz"--trivialParagraph :: ParagraphOptions -> Paragraph-trivialParagraph = "xxx" |< en "a" >| "zzz"--ligatureParagraph :: ParagraphOptions -> Paragraph-ligatureParagraph = "" |< en "inefficient" >| ""--manySpacesParagraph :: ParagraphOptions -> Paragraph-manySpacesParagraph = " " |< zxx " aaaaaa aaaaaa aaaaaa aaaaaa " >| " "---- | Filler text using the Arabic script.--- Source: <https://generator.lorem-ipsum.info/_arabic>-arabicFillerParagraph :: ParagraphOptions -> Paragraph-arabicFillerParagraph = "xxxx" |< zxx "إعلان بأيدي وبغطاء هذه من. عرض غينيا يتمكن واعتلاء في. و فرنسا الثانية وفي, أسر إذ السبب ارتكبها مليارات. فكان الشتاء، ما حتى, غير أن وصغار الأخذ. في الصفحة لهيمنة وتتحمّل وتم, أن أما وبداية الغالي." >| "z"--spannedArabicFillerParagraph :: ParagraphOptions -> Paragraph-spannedArabicFillerParagraph = "xxxx" |< zxx "إعلان بأيدي وبغطاء " >|< zxx "هذه من. عرض" >|< zxx " غينيا يتمكن واعتلاء " >|< zxx "في. و فرنسا" >|< zxx " الثانية وفي, أسر " >|< zxx "إذ السبب ارتكبها" >|< zxx " مليارات. فكان الشتاء، " >|< zxx "ما حتى, غير" >|< zxx " أن وصغار الأخذ. " >|< zxx "في الصفحة لهيمنة" >|< zxx " وتتحمّل وتم, أن " >|< zxx "أما وبداية الغالي." >| "z"---- | Filler text using the Latin script.--- Source: <https://www.lipsum.com/>-loremIpsumParagraph :: ParagraphOptions -> Paragraph-loremIpsumParagraph = "xxxx" |< zxx "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum." >| "z"--spannedLoremIpsumParagraph :: ParagraphOptions -> Paragraph-spannedLoremIpsumParagraph = "xxxx" |< zxx "Lorem ipsum dolor " >|< zxx "sit amet, consectetur" >|< zxx " adipiscing elit, sed " >|< zxx "do eiusmod tempor" >|< zxx " incididunt ut labore " >|< zxx "et dolore magna" >|< zxx " aliqua. Ut enim " >|< zxx "ad minim veniam," >|< zxx " quis nostrud exercitation " >|< zxx "ullamco laboris nisi" >|< zxx " ut aliquip ex " >|< zxx "ea commodo consequat." >|< zxx " Duis aute irure " >|< zxx "dolor in reprehenderit" >|< zxx " in voluptate velit " >|< zxx "esse cillum dolore" >|< zxx " eu fugiat nulla " >|< zxx "pariatur. Excepteur" >|< zxx " sint occaecat cupidatat " >|< zxx "non proident, sunt" >|< zxx " in culpa qui " >|< zxx "officia deserunt mollit" >|< zxx " anim id est " >|< zxx "laborum." >| "z"--czechHelloParagraph :: ParagraphOptions -> Paragraph-czechHelloParagraph = "xxxxx" |< cs "Ahoj, světe!" >| "zz"--mixedScriptSerbianParagraph :: ParagraphOptions -> Paragraph-mixedScriptSerbianParagraph = "xxxxxx" |< sr "Vikipedija (Википедија)" >| "zzzz"---- | For testing line breaking on boundaries that are different from script--- boundaries.-mixedScriptWordsParagraph :: ParagraphOptions -> Paragraph-mixedScriptWordsParagraph = "xxxxxxx" |< zxx "jjjжжжjjj jjjжжжjjj жжжjjjжжж жжжjjjжжж jжj jжj жjж жjж" >| "zzzzzzzz"--mixedLanguageLTRParagraph :: ParagraphOptions -> Paragraph-mixedLanguageLTRParagraph = "Tak " |< cs "jsem tady, " >|< ja "世界!" >| "zzzzzz"---- | Source: <https://faultlore.com/blah/text-hates-you/>-devanagariParagraph :: ParagraphOptions -> Paragraph-devanagariParagraph = "xxxxxxxx" |< zxx "पन्ह पन्ह त्र र्च कृकृ ड्ड न्हृे" >| "zzzzzzzz"--devanagariAccentParagraph :: ParagraphOptions -> Paragraph-devanagariAccentParagraph = "" |< zxx "\x954" >| ""--devanagariPrefixedAccentParagraph :: ParagraphOptions -> Paragraph-devanagariPrefixedAccentParagraph = "#" |< zxx "\x954" >| ""---- | Test hard line breaks with Latin characters:------ - after a short line (no soft line breaks needed),--- - after a longer line (soft line breaks needed),--- - after a long word (line break in the middle of a word needed),--- - after spaces,--- - after other line breaks.-hardBreaksLTRParagraph :: ParagraphOptions -> Paragraph-hardBreaksLTRParagraph = "x" |< zxx "jjjjjj\njjjjjj jjjjjj jjjjjj\nmmmmmm \njjjjjj\n\nmm mm mm" >| ""---- | Test hard line breaks like `hardBreaksLTRParagraph`,--- but with Arabic characters.-hardBreaksRTLParagraph :: ParagraphOptions -> Paragraph-hardBreaksRTLParagraph = "x" |< zxx "دددددد\nدددددد دددددد دددددد\nسسسسسسس \nدددددد\n\nسس سس سس" >| ""
+ test/Data/Text/ParagraphLayout/Plain/ParagraphData.hs view
@@ -0,0 +1,120 @@+{-# OPTIONS_GHC -fno-warn-deprecations #-}+module Data.Text.ParagraphLayout.Plain.ParagraphData+ ( arabicFillerParagraph+ , czechHelloParagraph+ , devanagariAccentParagraph+ , devanagariParagraph+ , devanagariPrefixedAccentParagraph+ , emptyParagraph+ , emptySpanParagraph+ , hardBreaksLTRParagraph+ , hardBreaksRTLParagraph+ , ligatureParagraph+ , loremIpsumParagraph+ , manySpacesParagraph+ , mixedLanguageLTRParagraph+ , mixedScriptSerbianParagraph+ , mixedScriptWordsParagraph+ , spannedArabicFillerParagraph+ , spannedLoremIpsumParagraph+ , trivialParagraph+ )+where++import Data.Text.ParagraphLayout.Plain+ ( Paragraph+ , ParagraphOptions+ , SpanOptions (spanLanguage)+ , defaultSpanOptions+ )+import Data.Text.ParagraphLayout.ParagraphConstruction++-- | Span with text in the Czech language.+cs :: String -> (SpanOptions, String)+cs = (,) defaultSpanOptions { spanLanguage = "cs" }++-- | Span with text in the English language.+en :: String -> (SpanOptions, String)+en = (,) defaultSpanOptions { spanLanguage = "en" }++-- | Span with text in the Japanese language.+ja :: String -> (SpanOptions, String)+ja = (,) defaultSpanOptions { spanLanguage = "ja" }++-- | Span with text in the Serbian language.+sr :: String -> (SpanOptions, String)+sr = (,) defaultSpanOptions { spanLanguage = "sr" }++-- | Span with text in no language.+zxx :: String -> (SpanOptions, String)+zxx = (,) defaultSpanOptions { spanLanguage = "zxx" }++emptyParagraph :: ParagraphOptions -> Paragraph ()+emptyParagraph = "x" |<>| "zzzzzzz"++emptySpanParagraph :: ParagraphOptions -> Paragraph ()+emptySpanParagraph = "xx" |< en "" >| "zzzzz"++trivialParagraph :: ParagraphOptions -> Paragraph ()+trivialParagraph = "xxx" |< en "a" >| "zzz"++ligatureParagraph :: ParagraphOptions -> Paragraph ()+ligatureParagraph = "" |< en "inefficient" >| ""++manySpacesParagraph :: ParagraphOptions -> Paragraph ()+manySpacesParagraph = " " |< zxx " aaaaaa aaaaaa aaaaaa aaaaaa " >| " "++-- | Filler text using the Arabic script.+-- Source: <https://generator.lorem-ipsum.info/_arabic>+arabicFillerParagraph :: ParagraphOptions -> Paragraph ()+arabicFillerParagraph = "xxxx" |< zxx "إعلان بأيدي وبغطاء هذه من. عرض غينيا يتمكن واعتلاء في. و فرنسا الثانية وفي, أسر إذ السبب ارتكبها مليارات. فكان الشتاء، ما حتى, غير أن وصغار الأخذ. في الصفحة لهيمنة وتتحمّل وتم, أن أما وبداية الغالي." >| "z"++spannedArabicFillerParagraph :: ParagraphOptions -> Paragraph ()+spannedArabicFillerParagraph = "xxxx" |< zxx "إعلان بأيدي وبغطاء " >|< zxx "هذه من. عرض" >|< zxx " غينيا يتمكن واعتلاء " >|< zxx "في. و فرنسا" >|< zxx " الثانية وفي, أسر " >|< zxx "إذ السبب ارتكبها" >|< zxx " مليارات. فكان الشتاء، " >|< zxx "ما حتى, غير" >|< zxx " أن وصغار الأخذ. " >|< zxx "في الصفحة لهيمنة" >|< zxx " وتتحمّل وتم, أن " >|< zxx "أما وبداية الغالي." >| "z"++-- | Filler text using the Latin script.+-- Source: <https://www.lipsum.com/>+loremIpsumParagraph :: ParagraphOptions -> Paragraph ()+loremIpsumParagraph = "xxxx" |< zxx "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum." >| "z"++spannedLoremIpsumParagraph :: ParagraphOptions -> Paragraph ()+spannedLoremIpsumParagraph = "xxxx" |< zxx "Lorem ipsum dolor " >|< zxx "sit amet, consectetur" >|< zxx " adipiscing elit, sed " >|< zxx "do eiusmod tempor" >|< zxx " incididunt ut labore " >|< zxx "et dolore magna" >|< zxx " aliqua. Ut enim " >|< zxx "ad minim veniam," >|< zxx " quis nostrud exercitation " >|< zxx "ullamco laboris nisi" >|< zxx " ut aliquip ex " >|< zxx "ea commodo consequat." >|< zxx " Duis aute irure " >|< zxx "dolor in reprehenderit" >|< zxx " in voluptate velit " >|< zxx "esse cillum dolore" >|< zxx " eu fugiat nulla " >|< zxx "pariatur. Excepteur" >|< zxx " sint occaecat cupidatat " >|< zxx "non proident, sunt" >|< zxx " in culpa qui " >|< zxx "officia deserunt mollit" >|< zxx " anim id est " >|< zxx "laborum." >| "z"++czechHelloParagraph :: ParagraphOptions -> Paragraph ()+czechHelloParagraph = "xxxxx" |< cs "Ahoj, světe!" >| "zz"++mixedScriptSerbianParagraph :: ParagraphOptions -> Paragraph ()+mixedScriptSerbianParagraph = "xxxxxx" |< sr "Vikipedija (Википедија)" >| "zzzz"++-- | For testing line breaking on boundaries that are different from script+-- boundaries.+mixedScriptWordsParagraph :: ParagraphOptions -> Paragraph ()+mixedScriptWordsParagraph = "xxxxxxx" |< zxx "jjjжжжjjj jjjжжжjjj жжжjjjжжж жжжjjjжжж jжj jжj жjж жjж" >| "zzzzzzzz"++mixedLanguageLTRParagraph :: ParagraphOptions -> Paragraph ()+mixedLanguageLTRParagraph = "Tak " |< cs "jsem tady, " >|< ja "世界!" >| "zzzzzz"++-- | Source: <https://faultlore.com/blah/text-hates-you/>+devanagariParagraph :: ParagraphOptions -> Paragraph ()+devanagariParagraph = "xxxxxxxx" |< zxx "पन्ह पन्ह त्र र्च कृकृ ड्ड न्हृे" >| "zzzzzzzz"++devanagariAccentParagraph :: ParagraphOptions -> Paragraph ()+devanagariAccentParagraph = "" |< zxx "\x954" >| ""++devanagariPrefixedAccentParagraph :: ParagraphOptions -> Paragraph ()+devanagariPrefixedAccentParagraph = "#" |< zxx "\x954" >| ""++-- | Test hard line breaks with Latin characters:+--+-- - after a short line (no soft line breaks needed),+-- - after a longer line (soft line breaks needed),+-- - after a long word (line break in the middle of a word needed),+-- - after spaces,+-- - after other line breaks.+hardBreaksLTRParagraph :: ParagraphOptions -> Paragraph ()+hardBreaksLTRParagraph = "x" |< zxx "jjjjjj\njjjjjj jjjjjj jjjjjj\nmmmmmm \njjjjjj\n\nmm mm mm" >| ""++-- | Test hard line breaks like `hardBreaksLTRParagraph`,+-- but with Arabic characters.+hardBreaksRTLParagraph :: ParagraphOptions -> Paragraph ()+hardBreaksRTLParagraph = "x" |< zxx "دددددد\nدددددد دددددد دددددد\nسسسسسسس \nدددددد\n\nسس سس سس" >| ""
+ test/Data/Text/ParagraphLayout/PlainSpec.hs view
@@ -0,0 +1,264 @@+{-# OPTIONS_GHC -fno-warn-deprecations #-}+module Data.Text.ParagraphLayout.PlainSpec (spec) where++import Test.Hspec+import System.FilePath ((</>))+import Data.Text.ParagraphLayout+import Data.Text.ParagraphLayout.FontLoader+import Data.Text.ParagraphLayout.Internal.Paginable (paginateAll)+import Data.Text.ParagraphLayout.Internal.Plain.ParagraphLayout (shapedRuns)+import Data.Text.ParagraphLayout.Plain+import Data.Text.ParagraphLayout.Plain.ParagraphData+import Data.Text.ParagraphLayout.PrettyShow+import Data.Text.ParagraphLayout.PrettyShow.Golden+import Data.Text.ParagraphLayout.Rect++emptyLayout :: ParagraphLayout d+emptyLayout = ParagraphLayout (Rect 0 0 0 0) []++emptySpanLayout :: ParagraphLayout d+emptySpanLayout = ParagraphLayout (Rect 0 0 0 0) [SpanLayout []]++spec :: Spec+spec = do++ describe "layoutPlain" $ do+ let+ goldenDir = ".golden" </> "paragraphLayout"+ shouldBeGolden = goldenTest goldenDir id id++ describe "with Arabic font" $ do+ font <- runIO $ loadFont arabicFont 0 testingOptions+ let opts_ = defaultParagraphOptions { paragraphFont = font }++ it "handles input with no spans" $ do+ let opts = opts_+ let result = layoutPlain $ emptyParagraph opts+ result `shouldBe` emptyLayout++ it "wraps filler text at 20em" $ do+ let opts = opts_ { paragraphMaxWidth = 20000 }+ let result = layoutPlain $ arabicFillerParagraph opts+ result `shouldBeGolden` "arabicFiller20em"++ it "wraps filler text with spans at 20em" $ do+ let opts = opts_ { paragraphMaxWidth = 20000 }+ let result = layoutPlain $ spannedArabicFillerParagraph opts+ result `shouldBeGolden` "spannedArabicFiller20em"++ it "spans do not reposition filler text at 20em" $ do+ let opts = opts_ { paragraphMaxWidth = 20000 }+ let withoutSpans = layoutPlain $ arabicFillerParagraph opts+ let withSpans = layoutPlain $ spannedArabicFillerParagraph opts+ paragraphRect withoutSpans `shouldBe` paragraphRect withSpans++ it "applies hard breaks correctly" $ do+ let opts = opts_ { paragraphMaxWidth = 6000 }+ let result = layoutPlain $ hardBreaksRTLParagraph opts+ result `shouldBeGolden` "hardBreaksRTL"++ describe "with Devanagari font" $ do+ font <- runIO $ loadFont devanagariFont 0 testingOptions+ let opts_ = defaultParagraphOptions { paragraphFont = font }++ describe "lone accent character" $ do+ let+ opts = opts_+ result = layoutPlain $+ devanagariAccentParagraph opts++ it "inserts a dotted circle" $ do+ x_size (paragraphRect result) `shouldBe` 645++ it "is golden" $ do+ result `shouldBeGolden` "devanagariAccent"++ describe "lone accent character after prefix" $ do+ let+ opts = opts_+ result = layoutPlain $+ devanagariPrefixedAccentParagraph opts++ it "does not insert a dotted circle" $ do+ x_size (paragraphRect result) `shouldBe` 0++ it "is golden" $ do+ result `shouldBeGolden` "devanagariPrefixedAccent"++ it "handles input without wrapping" $ do+ let opts = opts_+ let result = layoutPlain $ devanagariParagraph opts+ result `shouldBeGolden` "devanagari"++ describe "with Latin font" $ do+ -- Note: This font does not contain Japanese glyphs.+ font <- runIO $ loadFont latinFont 0 testingOptions+ let opts_ = defaultParagraphOptions { paragraphFont = font }++ it "handles input with no spans" $ do+ let opts = opts_+ let result = layoutPlain $ emptyParagraph opts+ result `shouldBe` emptyLayout++ it "handles one span with no text" $ do+ let opts = opts_+ let result = layoutPlain $ emptySpanParagraph opts+ result `shouldBe` emptySpanLayout++ it "handles Czech hello" $ do+ let opts = opts_+ let result = layoutPlain $ czechHelloParagraph opts+ result `shouldBeGolden` "czechHello"++ it "renders an \"ffi\" ligature" $ do+ let opts = opts_+ let result = layoutPlain $ ligatureParagraph opts+ result `shouldBeGolden` "ligature"++ it "breaks an \"ffi\" ligature into \"ff\" + \"i\"" $ do+ let opts = opts_ { paragraphMaxWidth = 2418 }+ let result = layoutPlain $ ligatureParagraph opts+ result `shouldBeGolden` "ligatureParagraphBreak1"++ it "breaks an \"ffi\" ligature into \"f\" + \"fi\"" $ do+ let opts = opts_ { paragraphMaxWidth = 1800 }+ let result = layoutPlain $ ligatureParagraph opts+ result `shouldBeGolden` "ligatureParagraphBreak2"++ it "handles mixed languages in LTR layout" $ do+ let opts = opts_+ let result = layoutPlain $ mixedLanguageLTRParagraph opts+ result `shouldBeGolden` "mixedLanguageLTR"++ it "handles normal line height" $ do+ let opts = opts_+ let result = layoutPlain $ trivialParagraph opts+ result `shouldBeGolden` "lineHeightNormal"++ it "handles larger line height" $ do+ let opts = opts_ { paragraphLineHeight = Absolute 1600 }+ let result = layoutPlain $ trivialParagraph opts+ result `shouldBeGolden` "lineHeightLarger"++ it "handles smaller line height" $ do+ let opts = opts_ { paragraphLineHeight = Absolute 599 }+ let result = layoutPlain $ trivialParagraph opts+ result `shouldBeGolden` "lineHeightSmaller"++ it "wraps mid-word when line is narrow" $ do+ let opts = opts_ { paragraphMaxWidth = 1300 }+ let result = layoutPlain $ czechHelloParagraph opts+ result `shouldBeGolden` "czechHelloParagraphNarrow"++ it "wraps by characters when line is ultra narrow" $ do+ let opts = opts_ { paragraphMaxWidth = 100 }+ let result = layoutPlain $ czechHelloParagraph opts+ result `shouldBeGolden` "czechHelloParagraphUltraNarrow"++ it "wraps lorem ipsum at 20em" $ do+ let opts = opts_ { paragraphMaxWidth = 20000 }+ let result = layoutPlain $ loremIpsumParagraph opts+ result `shouldBeGolden` "loremIpsum20em"++ it "wraps lorem ipsum at 100em" $ do+ let opts = opts_ { paragraphMaxWidth = 100000 }+ let result = layoutPlain $ loremIpsumParagraph opts+ result `shouldBeGolden` "loremIpsum100em"++ it "wraps lorem ipsum with spans at 20em" $ do+ let opts = opts_ { paragraphMaxWidth = 20000 }+ let result = layoutPlain $ spannedLoremIpsumParagraph opts+ result `shouldBeGolden` "spannedLoremIpsum20em"++ it "spans do not reposition lorem ipsum at 20em" $ do+ let opts = opts_ { paragraphMaxWidth = 20000 }+ let withoutSpans = layoutPlain $ loremIpsumParagraph opts+ let withSpans = layoutPlain $ spannedLoremIpsumParagraph opts+ paragraphRect withoutSpans `shouldBe` paragraphRect withSpans++ it "wraps mixed-script words correctly" $ do+ let opts = opts_ { paragraphMaxWidth = 6000 }+ let result = layoutPlain $ mixedScriptWordsParagraph opts+ result `shouldBeGolden` "mixedScriptWords"++ it "trims spaces around lines" $ do+ let opts = opts_ { paragraphMaxWidth = 6000 }+ let result = layoutPlain $ manySpacesParagraph opts+ result `shouldBeGolden` "manySpaces"++ it "applies hard breaks correctly" $ do+ let opts = opts_ { paragraphMaxWidth = 5000 }+ let result = layoutPlain $ hardBreaksLTRParagraph opts+ result `shouldBeGolden` "hardBreaksLTR"++ describe "paginate" $ do+ let+ goldenDir = ".golden" </> "paginatedParagraphLayout"+ shouldBeGolden = goldenTest goldenDir getPages Pages++ describe "with Arabic font" $ do+ font <- runIO $ loadFont arabicFont 0 testingOptions++ it "wraps filler text with spans at 20em" $ do+ let+ opts = defaultParagraphOptions+ { paragraphFont = font+ , paragraphMaxWidth = 20000+ }+ pl = layoutPlain $ spannedArabicFillerParagraph opts+ popts = PageOptions+ { pageCurrentHeight = 1000+ , pageNextHeight = 5000+ , pageOrphans = 2+ , pageWidows = 2+ }+ pages = paginateAll popts pl+ pages `shouldBeGolden` "spannedArabicFiller20em"++ describe "with Latin font" $ do+ font <- runIO $ loadFont latinFont 0 testingOptions++ it "wraps lorem ipsum at 20em" $ do+ let+ opts = defaultParagraphOptions+ { paragraphFont = font+ , paragraphMaxWidth = 20000+ }+ pl = layoutPlain $ loremIpsumParagraph opts+ popts = PageOptions+ { pageCurrentHeight = 2500+ , pageNextHeight = 8500+ , pageOrphans = 2+ , pageWidows = 3+ }+ pages = paginateAll popts pl+ pages `shouldBeGolden` "loremIpsum20em"++ describe "shaped runs for demo" $ do+ let+ goldenDir = ".golden" </> "shapedRuns"+ shouldBeGolden = goldenTest goldenDir getShapedRuns ShapedRuns+ -- | Test shaped runs against an expected value,+ -- and write metadata about the used font afterwards.+ shapedRunsSpecWithFont fontPath font subject name p = do+ let infoPath = fontInfoPath goldenDir name+ let writeInfo = writeFontInfo infoPath fontPath font+ after_ writeInfo $ it subject $ do+ let result = layoutPlain p+ shapedRuns result `shouldBeGolden` name++ describe "with Latin font" $ do+ let fontPath = latinFont+ font <- runIO $ loadFont fontPath 0 demoOptions++ let+ opts = defaultParagraphOptions+ { paragraphFont = font+ , paragraphMaxWidth = 640+ }+ shapedRunsSpec = shapedRunsSpecWithFont fontPath font++ shapedRunsSpec+ "wraps lorem ipsum with spans at 20em"+ "spannedLoremIpsum20em" $+ spannedLoremIpsumParagraph opts
+ test/Data/Text/ParagraphLayout/PrettyShow.hs view
@@ -0,0 +1,228 @@+{-# OPTIONS_GHC -fno-warn-deprecations #-}+module Data.Text.ParagraphLayout.PrettyShow+ ( PrettyShow+ , prettyShow+ , Pages (..)+ , RichPages (..)+ , ShapedRuns (..)+ )+where++import Data.List (intersperse)+import Data.Text.ParagraphLayout+import Data.Text.ParagraphLayout.Internal.Fragment+ ( Fragment (Fragment)+ , ShapedRun+ )+import qualified Data.Text.ParagraphLayout.Plain as Plain+import qualified Data.Text.ParagraphLayout.Rich as Rich++class PrettyShow a where+ prettyShow :: a -> String++newtype ShapedRuns = ShapedRuns { getShapedRuns :: [ShapedRun] }+ deriving (Eq)++instance PrettyShow ShapedRuns where+ prettyShow (ShapedRuns xs) =+ concat $ commaFirstList indent0 $ map (prettyShow . ShapedRun') xs++newtype ShapedRun' = ShapedRun' ShapedRun++instance PrettyShow ShapedRun' where+ prettyShow (ShapedRun' (x, y, glyphs)) = concat+ [ "("+ , show x+ , ", "+ , show y+ , ", "+ , newline+ , concat $ commaFirstList indent1 $ map prettyShowPair glyphs+ , ")"+ ]++type Page d = (PageContinuity, Plain.ParagraphLayout d)++newtype Pages d = Pages { getPages :: [Page d] }+ deriving (Eq)++instance Show d => PrettyShow (Pages d) where+ prettyShow (Pages ps) =+ concat (commaFirstList indent0 $ map (prettyShow . Page') ps)+ ++ newline++newtype Page' d = Page' (Page d)++instance Show d => PrettyShow (Page' d) where+ prettyShow (Page' (c, pl)) = concat+ [ "("+ , show c+ , ", "+ , prettyShow pl+ , ")"+ ]++type RichPage d = (PageContinuity, Rich.ParagraphLayout d)++newtype RichPages d = RichPages { getRichPages :: [RichPage d] }+ deriving (Eq)++instance Show d => PrettyShow (RichPages d) where+ prettyShow (RichPages ps) =+ concat (commaFirstList indent0 $ map (prettyShow . RichPage') ps)+ ++ newline++newtype RichPage' d = RichPage' (RichPage d)++instance Show d => PrettyShow (RichPage' d) where+ prettyShow (RichPage' (c, pl)) = concat+ [ "("+ , show c+ , ", "+ , prettyShow pl+ , ")"+ ]++instance Show d => PrettyShow (Plain.ParagraphLayout d) where+ prettyShow (Plain.ParagraphLayout pr sls) = concat+ [ "ParagraphLayout"+ , newline+ , indent1+ , "{ paragraphRect = "+ , show pr+ , newline+ , indent1+ , ", spanLayouts = ["+ , newline+ , concat $ commaAloneList indent2 $ map prettyShow sls+ , newline+ , indent1+ , "]}"+ , newline+ ]++instance Show d => PrettyShow (Plain.SpanLayout d) where+ prettyShow (Plain.SpanLayout frags) = concat+ [ "SpanLayout"+ , newline+ , concat $ commaFirstList indent2 $ map prettyShow frags+ ]++instance Show d => PrettyShow (Fragment d) where+ prettyShow (Fragment d l bs r pen glyphs) = concat+ [ "Fragment"+ , newline+ , indent3+ , "{ fragmentUserData = "+ , show d+ , newline+ , indent3+ , ", fragmentLine = "+ , show l+ , newline+ , indent3+ , ", fragmentAncestorBoxes ="+ , newline+ , concat $ commaFirstList indent4 $ map show bs+ , newline+ , indent3+ , ", fragmentRect = "+ , show r+ , newline+ , indent3+ , ", fragmentPen = "+ , prettyShowPair pen+ , newline+ , indent3+ , ", fragmentGlyphs ="+ , newline+ , concat $ commaFirstList indent4 $ map prettyShowPair glyphs+ , newline+ , indent3+ , "}"+ ]++instance Show d => PrettyShow (Rich.ParagraphLayout d) where+ prettyShow (Rich.ParagraphLayout pr frags) = concat+ [ "ParagraphLayout"+ , newline+ , indent1+ , "{ paragraphRect = "+ , show pr+ , newline+ , indent1+ , ", paragraphFragments ="+ , newline+ , concat $ commaFirstList indent2 $ map prettyShow frags+ , newline+ , indent1+ , "}"+ , newline+ ]++prettyShowPair :: (Show a, Show b) => (a, b) -> String+prettyShowPair (a, b) = "(" ++ show a ++ ", " ++ show b ++ ")"++commaAloneList :: String -> [String] -> [String]+commaAloneList indent items =+ map (indent ++) $+ suffixInit newline $+ intersperse "," $+ items++commaFirstList :: String -> [String] -> [String]+commaFirstList indent [] = [indent ++ "[]"]+commaFirstList indent items =+ prefixHead (indent ++ "[ ") $+ prefixTail (indent ++ ", ") $+ suffixInit newline $+ suffixLast (newline ++ indent ++ "]") $+ items++suffixInit :: String -> [String] -> [String]+suffixInit suffix = mapInit (++ suffix)++mapInit :: (a -> a) -> [a] -> [a]+mapInit _ [] = []+mapInit _ [x] = [x]+mapInit f (x : y : ys) = f x : mapInit f (y : ys)++prefixTail :: String -> [String] -> [String]+prefixTail prefix = mapTail (prefix ++)++mapTail :: (a -> a) -> [a] -> [a]+mapTail _ [] = []+mapTail f (x : xs) = x : (map f xs)++prefixHead :: String -> [String] -> [String]+prefixHead prefix = mapHead (prefix ++)++mapHead :: (a -> a) -> [a] -> [a]+mapHead _ [] = []+mapHead f (x : xs) = f x : xs++suffixLast :: String -> [String] -> [String]+suffixLast suffix = mapLast (++ suffix)++mapLast :: (a -> a) -> [a] -> [a]+mapLast _ [] = []+mapLast f [x] = [f x]+mapLast f (x : y : ys) = x : mapLast f (y : ys)++indent0 :: String+indent0 = ""++indent1 :: String+indent1 = " "++indent2 :: String+indent2 = indent1 ++ indent1++indent3 :: String+indent3 = indent1 ++ indent2++indent4 :: String+indent4 = indent1 ++ indent3++newline :: String+newline = "\n"
+ test/Data/Text/ParagraphLayout/PrettyShow/Golden.hs view
@@ -0,0 +1,32 @@+module Data.Text.ParagraphLayout.PrettyShow.Golden+ ( goldenTest+ , goldenPath+ , actualPath+ , fontInfoPath+ )+where++import Test.Hspec.Golden+import System.FilePath ((<.>), (</>))+import Data.Text.ParagraphLayout.PrettyShow++goldenPath :: FilePath -> String -> FilePath+goldenPath dir name = dir </> name <.> "golden"++actualPath :: FilePath -> String -> FilePath+actualPath dir name = dir </> name <.> "actual"++fontInfoPath :: FilePath -> String -> FilePath+fontInfoPath dir name = dir </> name <.> "fontInfo"++goldenTest :: (PrettyShow a, Show inner, Read inner) =>+ FilePath -> (a -> inner) -> (inner -> a) -> inner -> FilePath -> Golden a+goldenTest goldenDir unwrap wrap innerOutput name = Golden+ { output = wrap innerOutput+ , encodePretty = show . unwrap+ , writeToFile = \ path -> writeFile path . prettyShow+ , readFromFile = \ path -> wrap . read <$> readFile path+ , goldenFile = goldenPath goldenDir name+ , actualFile = Just (actualPath goldenDir name)+ , failFirstTime = True+ }
+ test/Data/Text/ParagraphLayout/Rich/ParagraphData.hs view
@@ -0,0 +1,169 @@+module Data.Text.ParagraphLayout.Rich.ParagraphData+ ( hardBoxBreakLTRParagraph+ , hardBoxBreakRTLParagraph+ , loremIpsumParagraph+ , mixedScriptParagraph+ , mixedSizesParagraph+ , nestedBoxesParagraph+ , softBreakParagraph+ )+where++import Data.Int (Int32)+import Data.Text (Text, pack)+import Data.Text.Glyphize (Direction (DirLTR, DirRTL), Font)++import Data.Text.ParagraphLayout.Internal.BoxOptions+import Data.Text.ParagraphLayout.Internal.ParagraphOptions+import Data.Text.ParagraphLayout.Internal.Rich.Paragraph+import Data.Text.ParagraphLayout.Internal.TextOptions+import Data.Text.ParagraphLayout.Internal.Tree++tLTR :: TextOptions+tLTR = defaultTextOptions DirLTR++tRTL :: TextOptions+tRTL = defaultTextOptions DirRTL++b_ :: BoxOptions+b_ = defaultBoxOptions++rootBox :: TextOptions -> [InnerNode Text d] -> RootNode Text d+rootBox opts nodes = RootBox (Box nodes opts)++box :: d -> BoxOptions -> TextOptions -> [InnerNode Text d] -> InnerNode Text d+box label boxOpts textOpts nodes = InlineBox label (Box nodes textOpts) boxOpts++text :: d -> String -> InnerNode Text d+text label contents = TextSequence label (pack contents)++hardBoxBreakLTRParagraph :: Font -> ParagraphOptions -> Paragraph String+hardBoxBreakLTRParagraph font = constructParagraph+ (pack "prefix")+ (rootBox t+ [ text "text1" "ababab"+ , box "box1" b1 t+ [ box "box2" b2 t+ [ text "text2" "abab\nabab"+ ]+ ]+ , text "text3" "ababab"+ ]+ )+ (pack "suffix")+ where+ b1 = b_ { boxSpacing = BoxSpacingLeftRight 50 100 }+ b2 = b_ { boxSpacing = BoxSpacingLeftRight 150 200 }+ t = tLTR { textFont = font, textLanguage = "zxx" }++hardBoxBreakRTLParagraph :: Font -> ParagraphOptions -> Paragraph String+hardBoxBreakRTLParagraph font = constructParagraph+ (pack "prefix")+ (rootBox t+ [ text "text1" "اباباب"+ , box "box1" b1 t+ [ box "box2" b2 t+ [ text "text2" "اباب\nاباب"+ ]+ ]+ , text "text3" "اباباب"+ ]+ )+ (pack "suffix")+ where+ b1 = b_ { boxSpacing = BoxSpacingLeftRight 50 100 }+ b2 = b_ { boxSpacing = BoxSpacingLeftRight 150 200 }+ t = tRTL { textFont = font, textLanguage = "zxx" }++-- | Filler text using the Latin script.+-- Source: <https://www.lipsum.com/>+loremIpsumParagraph :: Font -> ParagraphOptions -> Paragraph String+loremIpsumParagraph font = constructParagraph+ (pack "xxxx")+ (rootBox t+ [ text "text" "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."+ ]+ )+ (pack "z")+ where+ t = tLTR { textFont = font, textLanguage = "zxx" }++mixedScriptParagraph :: Font -> ParagraphOptions -> Paragraph String+mixedScriptParagraph font = constructParagraph+ (pack "prefix")+ (rootBox t+ [ text "text1" "jjjжжж"+ -- Box starting on script boundary:+ , box "box1" b1 t+ -- Box continuing over script boundary:+ [ text "text2" "jjjжжж" ]+ -- Box ending outside script boundary:+ , text "text3" "жжж"+ -- Box starting outside script boundary:+ , box "box2" b2 t+ -- Box continuing over two script boundaries:+ [ text "text4" "жжжjjjжжж" ]+ -- Box ending on script boundary:+ , text "text5" "jjj"+ ]+ )+ (pack "suffix")+ where+ b1 = b_ { boxSpacing = BoxSpacingLeftRight 50 100 }+ b2 = b_ { boxSpacing = BoxSpacingLeftRight 150 200 }+ t = tLTR { textFont = font, textLanguage = "zxx" }++mixedSizesParagraph :: (Font, Font) -> ParagraphOptions -> Paragraph String+mixedSizesParagraph (bigFont, smallFont) = constructParagraph+ (pack "prefix")+ (rootBox tBig+ [ text "bigText1" "big "+ , box "smallBox1" b_ tSmall+ [ text "smallText1" "small "+ ]+ , text "bigText2" "big "+ , box "smallBox2" b_ tSmall+ [ text "smallText2" "small "+ ]+ , text "bigText3" "big"+ ]+ )+ (pack "suffix")+ where+ tBig = tLTR { textFont = bigFont, textLanguage = "en" }+ tSmall = tLTR { textFont = smallFont, textLanguage = "en" }++nestedBoxesParagraph :: Font -> ParagraphOptions -> Paragraph String+nestedBoxesParagraph font = constructParagraph+ (pack "prefix")+ (rootBox t+ [ text "text1" "this paragraph has "+ , box "box2" b_ t+ [ box "box3" b_ t+ [ text "text2" "nested "+ ]+ , text "text3" "boxes"+ ]+ ]+ )+ (pack "suffix")+ where+ t = tLTR { textFont = font, textLanguage = "en" }++softBreakParagraph :: Int32 -> Font -> ParagraphOptions -> Paragraph String+softBreakParagraph spacing font = constructParagraph+ (pack "prefix")+ (rootBox t+ [ text "text1" "Lorem "+ , text "text2" "ipsum "+ , box "box2" b t+ [ text "text3" "dolor "+ , text "text4" "sit "+ , text "text5" "amet,"+ ]+ ]+ )+ (pack "suffix")+ where+ b = b_ { boxSpacing = BoxSpacingLeftRight spacing spacing }+ t = tLTR { textFont = font, textLanguage = "en" }
+ test/Data/Text/ParagraphLayout/RichSpec.hs view
@@ -0,0 +1,142 @@+module Data.Text.ParagraphLayout.RichSpec (spec) where++import Data.Int (Int32)++import Test.Hspec+import System.FilePath ((</>))+import Data.Text.ParagraphLayout+import Data.Text.ParagraphLayout.FontLoader+import Data.Text.ParagraphLayout.Internal.Paginable (paginateAll)+import Data.Text.ParagraphLayout.PrettyShow+import Data.Text.ParagraphLayout.PrettyShow.Golden+import Data.Text.ParagraphLayout.Rect+import Data.Text.ParagraphLayout.Rich+import Data.Text.ParagraphLayout.Rich.ParagraphData++fragmentRects :: ParagraphLayout d -> [(d, Rect Int32)]+fragmentRects p = map toItem $ paragraphFragments p+ where toItem (Fragment { fragmentUserData = d, fragmentRect = r }) = (d, r)++spec :: Spec+spec = do++ describe "layoutRich" $ do+ let+ goldenDir = ".golden" </> "richParagraphLayout"+ shouldBeGolden = goldenTest goldenDir id id++ describe "with Latin font" $ do+ font <- runIO $ loadFont latinFont 0 testingOptions+ fontSmall <- runIO $ loadFont latinFont 0 testingOptionsSmall++ it "wraps lorem ipsum at 20em" $ do+ let opts = defaultParagraphOptions { paragraphMaxWidth = 20000 }+ let input = loremIpsumParagraph font opts+ let result = layoutRich input+ result `shouldBeGolden` "loremIpsum20em"++ it "handles mixed sizes" $ do+ let opts = defaultParagraphOptions+ let input = mixedSizesParagraph (font, fontSmall) opts+ let result = layoutRich input+ result `shouldBeGolden` "mixedSizes"++ it "handles mixed script" $ do+ let opts = defaultParagraphOptions+ let input = mixedScriptParagraph font opts+ let result = layoutRich input+ result `shouldBeGolden` "mixedScript"++ it "handles mixed script with line wraps" $ do+ let opts = defaultParagraphOptions { paragraphMaxWidth = 5000 }+ let input = mixedScriptParagraph font opts+ let result = layoutRich input+ result `shouldBeGolden` "mixedScriptWrap"++ it "handles nested boxes" $ do+ let opts = defaultParagraphOptions+ let input = nestedBoxesParagraph font opts+ let result = layoutRich input+ result `shouldBeGolden` "nestedBoxes"++ it "handles hard break in LTR boxes" $ do+ let opts = defaultParagraphOptions+ let input = hardBoxBreakLTRParagraph font opts+ let result = layoutRich input+ result `shouldBeGolden` "hardBoxBreakLTR"++ it "breaks line early if box spacing does not fit" $ do+ let lineH = -1121+ let lineY n = lineH * (n - 1)+ let wordAdvancesWithSpace = [3134, 2954, 2659, 1332, 2601]+ let spaceAdvance = 231+ let wordW n = wordAdvancesWithSpace !! (n - 1)+ let wordW_ n = wordW n - spaceAdvance+ let originX = 0+ let wordX n =+ originX + (sum $ take (n - 1) wordAdvancesWithSpace)+ let endX = originX + (sum wordAdvancesWithSpace)+ -- A paragraph exactly wide enough to fit the whole text.+ let opts = defaultParagraphOptions { paragraphMaxWidth = endX }+ -- Small spacing that should push one word onto the next line.+ let s = 5+ -- Large spacing that should push two words onto the next line.+ let s' = wordW 5 + spaceAdvance + 1+ let inputNoSpacing = softBreakParagraph 0 font opts+ let inputSmallSpacing = softBreakParagraph s font opts+ let inputLargeSpacing = softBreakParagraph s' font opts+ let resultNoSpacing = layoutRich inputNoSpacing+ let resultSmallSpacing = layoutRich inputSmallSpacing+ let resultLargeSpacing = layoutRich inputLargeSpacing+ fragmentRects resultNoSpacing `shouldBe`+ [ ("text1", Rect (wordX 1) (lineY 1) (wordW 1) lineH)+ , ("text2", Rect (wordX 2) (lineY 1) (wordW 2) lineH)+ , ("text3", Rect (wordX 3) (lineY 1) (wordW 3) lineH)+ , ("text4", Rect (wordX 4) (lineY 1) (wordW 4) lineH)+ , ("text5", Rect (wordX 5) (lineY 1) (wordW 5) lineH)+ ]+ fragmentRects resultSmallSpacing `shouldBe`+ [ ("text1", Rect (wordX 1) (lineY 1) (wordW 1) lineH)+ , ("text2", Rect (wordX 2) (lineY 1) (wordW 2) lineH)+ , ("text3", Rect (wordX 3 + s) (lineY 1) (wordW 3) lineH)+ , ("text4", Rect (wordX 4 + s) (lineY 1) (wordW_ 4) lineH)+ , ("text5", Rect originX (lineY 2) (wordW 5) lineH)+ ]+ fragmentRects resultLargeSpacing `shouldBe`+ [ ("text1", Rect (wordX 1) (lineY 1) (wordW 1) lineH)+ , ("text2", Rect (wordX 2) (lineY 1) (wordW 2) lineH)+ , ("text3", Rect (wordX 3 + s') (lineY 1) (wordW_ 3) lineH)+ , ("text4", Rect originX (lineY 2) (wordW 4) lineH)+ , ("text5",+ Rect (originX + wordW 4) (lineY 2) (wordW 5) lineH)+ ]++ describe "with Arabic font" $ do+ font <- runIO $ loadFont arabicFont 0 testingOptions++ it "handles hard break in RTL boxes" $ do+ let opts = defaultParagraphOptions+ let input = hardBoxBreakRTLParagraph font opts+ let result = layoutRich input+ result `shouldBeGolden` "hardBoxBreakRTL"++ describe "paginate" $ do+ let+ goldenDir = ".golden" </> "paginatedRichParagraphLayout"+ shouldBeGolden = goldenTest goldenDir getRichPages RichPages++ describe "with Latin font" $ do+ font <- runIO $ loadFont latinFont 0 testingOptions++ it "wraps lorem ipsum at 20em" $ do+ let opts = defaultParagraphOptions { paragraphMaxWidth = 20000 }+ let input = loremIpsumParagraph font opts+ let pl = layoutRich input+ let popts = PageOptions+ { pageCurrentHeight = 2500+ , pageNextHeight = 8500+ , pageOrphans = 2+ , pageWidows = 3+ }+ let pages = paginateAll popts pl+ pages `shouldBeGolden` "loremIpsum20em"
test/Data/Text/ParagraphLayout/SpanData.hs view
@@ -6,43 +6,61 @@ where import Data.Text (pack)-import Data.Text.Glyphize (Font)+import Data.Text.Glyphize (Direction (DirLTR), Font) +import Data.Text.ParagraphLayout.Internal.BoxOptions import Data.Text.ParagraphLayout.Internal.LineHeight+import Data.Text.ParagraphLayout.Internal.ResolvedBox import Data.Text.ParagraphLayout.Internal.ResolvedSpan+import Data.Text.ParagraphLayout.Internal.TextOptions -emptySpan :: Font -> ResolvedSpan+defaultBox :: Direction -> ResolvedBox ()+defaultBox dir = ResolvedBox () 0 defaultBoxOptions dir++emptySpan :: Font -> ResolvedSpan () emptySpan font = ResolvedSpan- { spanIndex = 0+ { spanUserData = ()+ , spanIndex = 0 , spanOffsetInParagraph = 0 , spanText = pack ""- , spanFont = font- , spanLineHeight = Normal- , spanLanguage = "en"+ , spanTextOptions = (defaultTextOptions DirLTR)+ { textFont = font+ , textLineHeight = Normal+ , textLanguage = "en"+ }+ , spanBoxes = [defaultBox DirLTR] , spanLineBreaks = [] , spanCharacterBreaks = [] } -czechHello :: Font -> ResolvedSpan+czechHello :: Font -> ResolvedSpan () czechHello font = ResolvedSpan- { spanIndex = 0+ { spanUserData = ()+ , spanIndex = 0 , spanOffsetInParagraph = 0 , spanText = pack "Ahoj, světe!"- , spanFont = font- , spanLineHeight = Normal- , spanLanguage = "cs"+ , spanTextOptions = (defaultTextOptions DirLTR)+ { textFont = font+ , textLineHeight = Normal+ , textLanguage = "cs"+ }+ , spanBoxes = [defaultBox DirLTR] , spanLineBreaks = [] , spanCharacterBreaks = [] } -serbianMixedScript :: Font -> ResolvedSpan+serbianMixedScript :: Font -> ResolvedSpan () serbianMixedScript font = ResolvedSpan- { spanIndex = 0+ { spanUserData = ()+ , spanIndex = 0 , spanOffsetInParagraph = 0 , spanText = pack "Vikipedija (Википедија)"- , spanFont = font- , spanLineHeight = Normal- , spanLanguage = "sr"+ , spanTextOptions = (defaultTextOptions DirLTR)+ { textFont = font+ , textLineHeight = Normal+ , textLanguage = "sr"+ }+ , spanBoxes = [defaultBox DirLTR] , spanLineBreaks = [] , spanCharacterBreaks = [] }
− test/Data/Text/ParagraphLayoutSpec.hs
@@ -1,444 +0,0 @@-module Data.Text.ParagraphLayoutSpec (spec) where--import Data.Text.Glyphize- ( Font- , FontOptions (optionPPEm, optionScale)- , defaultFontOptions- )--import Test.Hspec-import Test.Hspec.Golden-import System.FilePath ((</>))-import Data.Text.ParagraphLayout-import Data.Text.ParagraphLayout.FontLoader-import Data.Text.ParagraphLayout.Internal.Fragment-import Data.Text.ParagraphLayout.Internal.Plain.ParagraphLayout-import Data.Text.ParagraphLayout.ParagraphData-import Data.Text.ParagraphLayout.Rect--class PrettyShow a where- prettyShow :: a -> String--newtype ShapedRuns = ShapedRuns { getShapedRuns :: [ShapedRun] }- deriving (Eq)--instance PrettyShow ShapedRuns where- prettyShow (ShapedRuns xs) = concat- [ "["- , concat $ indentedList indent0 $ map (prettyShow . ShapedRun') xs- , "]"- ]--newtype ShapedRun' = ShapedRun' ShapedRun--instance PrettyShow ShapedRun' where- prettyShow (ShapedRun' (x, y, glyphs)) = concat- [ "("- , show x- , ","- , show y- , ","- , newline- , indent1- , "["- , concat $ indentedList indent1 $ map show glyphs- , "]"- , newline- , ")"- ]--type Page = (PageContinuity, ParagraphLayout)--newtype Pages = Pages { getPages :: [Page] }- deriving (Eq)--instance PrettyShow Pages where- prettyShow (Pages ps) = concat- [ "["- , concat $ indentedList indent0 $ map (prettyShow . Page') ps- , "]"- ]--newtype Page' = Page' Page--instance PrettyShow Page' where- prettyShow (Page' (c, pl)) = concat- [ "("- , show c- , ", "- , prettyShow pl- , ")"- ]--instance PrettyShow ParagraphLayout where- prettyShow (ParagraphLayout pr sls) = concat- [ "ParagraphLayout {paragraphRect = "- , show pr- , commaSpace- , "spanLayouts = ["- , newline- , indent1- , concat $ indentedList indent1 $ map prettyShow sls- , newline- , "]}"- , newline- ]--instance PrettyShow SpanLayout where- prettyShow (SpanLayout frags) = concat- [ "SpanLayout ["- , concat $ inlineList $ map prettyShow frags- , "]"- ]--instance PrettyShow Fragment where- prettyShow (Fragment r pen glyphs) = concat- [ "Fragment {fragmentRect = "- , show r- , commaSpace- , "fragmentPen = "- , show pen- , commaSpace- , "fragmentGlyphs ="- , newline- , indent2- , "["- , concat $ indentedList indent2 $ map show glyphs- , "]"- , newline- , indent1- , "}"- ]--inlineList :: [String] -> [String]-inlineList items = suffixInit commaSpace items--indentedList :: String -> [String] -> [String]-indentedList indent items = prefixTail indent $ suffixInit commaNewline items--suffixInit :: String -> [String] -> [String]-suffixInit suffix = mapInit (++ suffix)--mapInit :: (a -> a) -> [a] -> [a]-mapInit _ [] = []-mapInit _ [x] = [x]-mapInit f (x : y : ys) = f x : mapInit f (y : ys)--prefixTail :: String -> [String] -> [String]-prefixTail prefix = mapTail (prefix ++)--mapTail :: (a -> a) -> [a] -> [a]-mapTail _ [] = []-mapTail f (x : xs) = x : (map f xs)--indent0 :: String-indent0 = ""--indent1 :: String-indent1 = " "--indent2 :: String-indent2 = indent1 ++ indent1--newline :: String-newline = "\n"--commaSpace :: String-commaSpace = ", "--commaNewline :: String-commaNewline = "," ++ newline--class ShouldBeGolden a where- shouldBeGolden :: a -> FilePath -> Golden a--instance ShouldBeGolden ParagraphLayout where- shouldBeGolden output_ name = Golden- { output = output_- , encodePretty = show- , writeToFile = \ path -> writeFile path . prettyShow- , readFromFile = \ path -> readFile path >>= return . read- , goldenFile = ".golden" </> name </> "golden"- , actualFile = Just (".golden" </> name </> "actual")- , failFirstTime = True- }--instance ShouldBeGolden Pages where- shouldBeGolden output_ name = Golden- { output = output_- , encodePretty = show . getPages- , writeToFile = \ path -> writeFile path . prettyShow- , readFromFile = \ path -> readFile path >>= return . Pages . read- , goldenFile = ".golden" </> name </> "golden"- , actualFile = Just (".golden" </> name </> "actual")- , failFirstTime = True- }--instance ShouldBeGolden ShapedRuns where- shouldBeGolden output_ name = Golden- { output = output_- , encodePretty = show . getShapedRuns- , writeToFile = \ path -> writeFile path . prettyShow- , readFromFile = \ path -> readFile path >>= return . ShapedRuns . read- , goldenFile = ".golden" </> "shapedRuns" </> name </> "golden"- , actualFile = Just (".golden" </> "shapedRuns" </> name </> "actual")- , failFirstTime = True- }--fontInfoPath :: String -> FilePath-fontInfoPath name = ".golden" </> "shapedRuns" </> name </> "fontInfo"--shapedRuns' :: ParagraphLayout -> ShapedRuns-shapedRuns' = ShapedRuns . shapedRuns--emptyLayout :: ParagraphLayout-emptyLayout = ParagraphLayout (Rect 0 0 0 0) []--emptySpanLayout :: ParagraphLayout-emptySpanLayout = ParagraphLayout (Rect 0 0 0 0) [SpanLayout []]---- Test primarily with a high level of detail (1000 units per EM).--- Hinting should behave as if the font size were 24px.--- TODO: Test hinting.-testingOptions :: FontOptions-testingOptions = defaultFontOptions {- optionPPEm = Just (24, 24),- optionScale = Just (1000, 1000)-}---- For the demo, use a 15px font size with exactly one scale unit per pixel.-demoOptions :: FontOptions-demoOptions = defaultFontOptions {- optionPPEm = Just (15, 15),- optionScale = Just (15, 15)-}---- | Test shaped runs against an expected value, and write metadata about the--- used font afterwards.-shapedRunsSpecWithFont ::- FilePath -> Font -> String -> FilePath -> Paragraph -> SpecWith ()-shapedRunsSpecWithFont fontPath font subject name p = do- let writeInfo = writeFontInfo (fontInfoPath name) fontPath font- after_ writeInfo $ it subject $ do- let result = layoutPlain p- shapedRuns' result `shouldBeGolden` name--paginateAll :: PageOptions -> ParagraphLayout -> [Page]-paginateAll opts pl = case paginate opts pl of- (c, pl1, next) -> (c, pl1) : case next of- Just pl2 -> paginateAll opts' pl2- Nothing -> []- where- opts' = opts { pageCurrentHeight = pageNextHeight opts }--spec :: Spec-spec = do-- describe "layoutPlain" $ do-- describe "with Arabic font" $ do- font <- runIO $ loadFont arabicFont 0 testingOptions-- it "handles input with no spans" $ do- let opts = ParagraphOptions font Normal 8000- let result = layoutPlain $ emptyParagraph opts- result `shouldBe` emptyLayout-- it "wraps filler text at 20em" $ do- let opts = ParagraphOptions font Normal 20000- let result = layoutPlain $ arabicFillerParagraph opts- result `shouldBeGolden` "arabicFiller20em"-- it "wraps filler text with spans at 20em" $ do- let opts = ParagraphOptions font Normal 20000- let result = layoutPlain $ spannedArabicFillerParagraph opts- result `shouldBeGolden` "spannedArabicFiller20em"-- it "spans do not reposition filler text at 20em" $ do- let opts = ParagraphOptions font Normal 20000- let withoutSpans = layoutPlain $ arabicFillerParagraph opts- let withSpans = layoutPlain $ spannedArabicFillerParagraph opts- paragraphRect withoutSpans `shouldBe` paragraphRect withSpans-- it "applies hard breaks correctly" $ do- let opts = ParagraphOptions font Normal 6000- let result = layoutPlain $ hardBreaksRTLParagraph opts- result `shouldBeGolden` "hardBreaksRTLParagraph"-- describe "with Devanagari font" $ do- font <- runIO $ loadFont devanagariFont 0 testingOptions-- describe "lone accent character" $ do- let- opts = ParagraphOptions font Normal 8000- result = layoutPlain $- devanagariAccentParagraph opts-- it "inserts a dotted circle" $ do- x_size (paragraphRect result) `shouldBe` 645-- it "is golden" $ do- result `shouldBeGolden` "devanagariAccentParagraph"-- describe "lone accent character after prefix" $ do- let- opts = ParagraphOptions font Normal 8000- result = layoutPlain $- devanagariPrefixedAccentParagraph opts-- it "does not insert a dotted circle" $ do- x_size (paragraphRect result) `shouldBe` 0-- it "is golden" $ do- result `shouldBeGolden` "devanagariPrefixedAccentParagraph"-- it "handles input without wrapping" $ do- let opts = ParagraphOptions font Normal 9000- let result = layoutPlain $ devanagariParagraph opts- result `shouldBeGolden` "devanagariParagraph"-- describe "with Latin font" $ do- -- Note: This font does not contain Japanese glyphs.- font <- runIO $ loadFont latinFont 0 testingOptions-- it "handles input with no spans" $ do- let opts = ParagraphOptions font Normal 8000- let result = layoutPlain $ emptyParagraph opts- result `shouldBe` emptyLayout-- it "handles one span with no text" $ do- let opts = ParagraphOptions font Normal 8000- let result = layoutPlain $ emptySpanParagraph opts- result `shouldBe` emptySpanLayout-- it "handles Czech hello" $ do- let opts = ParagraphOptions font Normal 8000- let result = layoutPlain $ czechHelloParagraph opts- result `shouldBeGolden` "czechHelloParagraph"-- it "renders an \"ffi\" ligature" $ do- let opts = ParagraphOptions font Normal 8000- let result = layoutPlain $ ligatureParagraph opts- result `shouldBeGolden` "ligatureParagraph"-- it "breaks an \"ffi\" ligature into \"ff\" + \"i\"" $ do- let opts = ParagraphOptions font Normal 2418- let result = layoutPlain $ ligatureParagraph opts- result `shouldBeGolden` "ligatureParagraphBreak1"-- it "breaks an \"ffi\" ligature into \"f\" + \"fi\"" $ do- let opts = ParagraphOptions font Normal 1800- let result = layoutPlain $ ligatureParagraph opts- result `shouldBeGolden` "ligatureParagraphBreak2"-- it "handles mixed languages in LTR layout" $ do- let opts = ParagraphOptions font Normal 8000- let result = layoutPlain $ mixedLanguageLTRParagraph opts- result `shouldBeGolden` "mixedLanguageLTRParagraph"-- it "handles normal line height" $ do- let opts = ParagraphOptions font Normal 8000- let result = layoutPlain $ trivialParagraph opts- result `shouldBeGolden` "lineHeightNormal"-- it "handles larger line height" $ do- let opts = ParagraphOptions font (Absolute 1600) 8000- let result = layoutPlain $ trivialParagraph opts- result `shouldBeGolden` "lineHeightLarger"-- it "handles smaller line height" $ do- let opts = ParagraphOptions font (Absolute 599) 8000- let result = layoutPlain $ trivialParagraph opts- result `shouldBeGolden` "lineHeightSmaller"-- it "wraps mid-word when line is narrow" $ do- let opts = ParagraphOptions font Normal 1300- let result = layoutPlain $ czechHelloParagraph opts- result `shouldBeGolden` "czechHelloParagraphNarrow"-- it "wraps by characters when line is ultra narrow" $ do- let opts = ParagraphOptions font Normal 100- let result = layoutPlain $ czechHelloParagraph opts- result `shouldBeGolden` "czechHelloParagraphUltraNarrow"-- it "wraps lorem ipsum at 20em" $ do- let opts = ParagraphOptions font Normal 20000- let result = layoutPlain $ loremIpsumParagraph opts- result `shouldBeGolden` "loremIpsum20em"-- it "wraps lorem ipsum at 100em" $ do- let opts = ParagraphOptions font Normal 100000- let result = layoutPlain $ loremIpsumParagraph opts- result `shouldBeGolden` "loremIpsum100em"-- it "wraps lorem ipsum with spans at 20em" $ do- let opts = ParagraphOptions font Normal 20000- let result = layoutPlain $ spannedLoremIpsumParagraph opts- result `shouldBeGolden` "spannedLoremIpsum20em"-- it "spans do not reposition lorem ipsum at 20em" $ do- let opts = ParagraphOptions font Normal 20000- let withoutSpans = layoutPlain $ loremIpsumParagraph opts- let withSpans = layoutPlain $ spannedLoremIpsumParagraph opts- paragraphRect withoutSpans `shouldBe` paragraphRect withSpans-- it "wraps mixed-script words correctly" $ do- let opts = ParagraphOptions font Normal 6000- let result = layoutPlain $ mixedScriptWordsParagraph opts- result `shouldBeGolden` "mixedScriptWordsParagraph"-- it "trims spaces around lines" $ do- let opts = ParagraphOptions font Normal 6000- let result = layoutPlain $ manySpacesParagraph opts- result `shouldBeGolden` "manySpacesParagraph"-- it "applies hard breaks correctly" $ do- let opts = ParagraphOptions font Normal 5000- let result = layoutPlain $ hardBreaksLTRParagraph opts- result `shouldBeGolden` "hardBreaksLTRParagraph"-- describe "paginate" $ do-- describe "with Arabic font" $ do- font <- runIO $ loadFont arabicFont 0 testingOptions-- it "wraps filler text with spans at 20em" $ do- let- opts = ParagraphOptions font Normal 20000- pl = layoutPlain $ spannedArabicFillerParagraph opts- popts = PageOptions- { pageCurrentHeight = 1000- , pageNextHeight = 5000- , pageOrphans = 2- , pageWidows = 2- }- pages = paginateAll popts pl- Pages pages `shouldBeGolden` "spannedArabicFiller20emPaginated"-- describe "with Latin font" $ do- font <- runIO $ loadFont latinFont 0 testingOptions-- it "wraps lorem ipsum at 20em" $ do- let- opts = ParagraphOptions font Normal 20000- pl = layoutPlain $ loremIpsumParagraph opts- popts = PageOptions- { pageCurrentHeight = 2500- , pageNextHeight = 8500- , pageOrphans = 2- , pageWidows = 3- }- pages = paginateAll popts pl- Pages pages `shouldBeGolden` "loremIpsum20emPaginated"-- describe "shaped runs for demo" $ do-- describe "with Latin font" $ do- let fontPath = latinFont- font <- runIO $ loadFont fontPath 0 demoOptions- let shapedRunsSpec = shapedRunsSpecWithFont fontPath font-- shapedRunsSpec "wraps lorem ipsum with spans at 20em"- "spannedLoremIpsum20em" $- spannedLoremIpsumParagraph $- ParagraphOptions font Normal 300